Java数据库插入记录的语句-单引号-双引号values('username+'-'+password
數據庫插入記錄的語句,單引號,雙引號values(’”+username+”’,’”+password+
我們來看這條語句
cmd.CommandText = “insert into users(UserName,PassWord) values(’”+username+”’,’”+password+”’)”;
1、首先困惑的關鍵原因在于“斷句”錯誤。很顯然你把’”+username+”’ 當成一個整體了,也把’”+password+”’當成一個整體了,問題就在這他們不是一個整體,而你把真正的整體給拆了。
2、我們來看cmd.CommandText這個屬性應該是一個字符串,就像這樣cmd.CommandText=“insert into……”,但是我們這個“insert into……”插入語句里有變量,那你就不能作為整體都放在雙引號里了,那樣就都成字符沒有變量了,(于是你就插入了username和password,而不是變量username和password他們表示的值)。那怎樣在cmd.CommandText這個屬性字符串里放入變量的值呢?那就要用到字符串的拼接,很簡單就是用+號連接起來,比如“abc”+“123”=“abc123”。
3、接著我們再來看這條語句cmd.CommandText = “insert into users(UserName,PassWord) values(‘username’,’password’)”;
這條語句運行后會插入username和password,而不是變量username和password他們表示的值,那我們就把變量單獨拿出來用+號拼接,那就變成了
cmd.CommandText = “insert into users(UserName,PassWord) values(’ + username + ‘,’ + password + ‘)”;
但是你不要忘了我們拼接的是字符串,所以+號前后都應是連接的字符串,那我們檢查上面的語句就發現問題了第一個+號前是
“insert into users(UserName,PassWord) values(’
不是一個字符串,那就要補成字符串了,變成
“insert into users(UserName,PassWord) values(‘”
第2個+號后是
‘,’
也不是字符串,也要補成字符串,變成
“’,’”
同理,
‘)”;
也要補成字符串,變成
“’)”
最后用+號把這5部分字符串拼接起來就成了
cmd.CommandText =“insert into users(UserName,PassWord) values(‘”+ username +“’,’ ”+ password +“’)”;
為了便于區分,雙引號我采用中文的,你把中文雙引號改成英文雙引號就成了:
cmd.CommandText = “insert into users(UserName,PassWord) values(’”+username+”’,’”+password+”’)”;
4、現在明白了吧,我在嘮叨幾句。這條語句
“insert into users(UserName,PassWord) values(’”+username+”’,’”+password+”’)”;
應該分為以下5部分字符串整體
“insert into users(UserName,PassWord) values(’”
username
“’,’”
password
“’)”;
其中username和password為字符串變量,最后用4個+號拼接起來作為數據庫操作的字符串。要注意的是里面的單引號’ 是數據庫操作語句的,千萬別和字符串的雙引號” 混在一塊了!
如果
username=“andmin”;
password=“admin888”;
那么這條語句
cmd.CommandText = “insert into users(UserName,PassWord) values(’”+username+”’,’”+password+”’)”;
及等價于
cmd.CommandText =“insert into users(UserName,PassWord) values(’”+“admin”+“’,’”+“admin888”+“’)”;
還是那句話,為了便于區分,雙引號我采用中文的,實際操作時改成英文雙引號就成了。
5、現在徹底明白了吧^_^,那我這樣寫可以嗎
cmd.CommandText = “insert into”+”users(UserName,PassWord) values(’”+username+”’,’”+password+”’)”;
你要是確定一定以及肯定打話,那說明你徹底明白了,不過這樣有點畫蛇添足-_-!
6、就這樣吧,一句話總結一下:就是用+號把帶變量的數據庫操作字符串拼接出來。
總結
以上是生活随笔為你收集整理的Java数据库插入记录的语句-单引号-双引号values('username+'-'+password的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《预训练周刊》第24期:Infinite
- 下一篇: Springboot,Mybatis根据