运行此代码时,我收到一个非常奇怪的JavaScript错误:
<script type = 'text/javascript'>
var ask = confirm('".$message."');
if (ask == false)
{
return false;
}
else
{
return true;
}
</script>
Run Code Online (Sandbox Code Playgroud)
在JavaScript控制台中,它说:
Syntax Error: Illegal return statement
它发生在return true;和return false;
(我从php函数回应这个javascript; $message变量是php参数之一)
我的代码出了什么问题?
为了防止我的数据库变得太大,我希望sqlite只插入尚未插入的值.我做了一些搜索,并认为最好的方法是使用UNIQUE约束.在我看来,当插入一个非UNIQUE的值时,sqlite会崩溃,我该如何规避这个错误并继续下一次提交呢?
以下是一些相关代码.
sql = sqlite3.connect('submissions.db')
cur = sql.cursor()
cur.execute('CREATE TABLE IF NOT EXISTS some_table(id TEXT UNIQUE)')
sql.commit()
for thing in things:
try:
# Do some stuff
except AttributeError:
pass
cur.execute('INSERT INTO some_table VALUES(?)', [thing])
sql.commit()
Run Code Online (Sandbox Code Playgroud)
这是追溯:
Traceback (most recent call last):
File "D:\Directory\Python\Projects\Oddshotcrawler for Reddit, globaloffensive\oddshotcrawler.py", line 62, in <module>
oddshotcrawler()
File "D:\Directory\Python\Projects\Oddshotcrawler for Reddit, globaloffensive\oddshotcrawler.py", line 54, in oddshotcrawler
cur.execute('INSERT INTO oldposts VALUES(?)', [thing])
sqlite3.IntegrityError: UNIQUE constraint failed: some_table.id
[Finished in 7.1s with exit code 1]
Run Code Online (Sandbox Code Playgroud)