消息102,级别15,状态1,行1个附近有语法错误('
我想查询一个表中插入,我不断收到这样的信息:消息102,级别15,状态1,行1个附近有语法错误('
查询是:
INSERT INTO A_USER(PK,status,login_id,HASHBYTES('md5', password),fk_role,last_update_ts,last_update_by,created_by)
VALUES (2,1,'abc', 'abc',2,'3/15/2012 12:21:46 PM','abc','abc')
您的问题在于此行HASHBYTES('md5', password)
,您想在INSERT
的VALUES
区域使用HASHBYTES
。
INSERT INTO A_USER
(
PK
,status
,login_id
,[password] -- change to the name of your column.
,fk_role
,last_update_ts
,last_update_by
,created_by
)
VALUES
(
2
,1
, 'abc'
,HASHBYTES('md5', 'abc') -- place your password to be hashed where 'abc' is.
,2
,'3/15/2012 12:21:46 PM'
,'abc'
,'abc'
)
是的,我逃避了这一点,但现在得到这个错误...它现在给另一个错误... Msg 128,Level 15 ,状态1,行2在此上下文中不允许使用名称“password”,有效表达式是常量,常量表达式和(在某些上下文中)变量,列名是不允许的 – 2012-04-18 11:05:28
我刚刚更新了我的答案,您需要将hashby中的密码替换为您想要转换的值 – Taryn 2012-04-18 11:06:12
感谢bluefeet ...完美的工作 – 2012-04-18 11:11:30
INSERT INTO EMP_USER(PK,status,login_id,password,fk_role,last_update_ts,last_update_by,created_by)
VALUES (2,1,HASHBYTES('md5', password),'abc','abc',2,'3/15/2012 12:21:46 PM','abc','abc')
insert语句就像是
将HASHBYTES('md5', password)
中的值部分,并命名该列在列比肩t
+1:问题在于他在第一行放置了其他名称而不是列名 – 2012-04-18 11:00:06
@Java_NewBie:我不知道如何命名要存储哈希密码的列。将'password'替换为该列的名称。例如:'... EMP_USER(PK,status,login_id,password_column_name,...' – 2012-04-18 11:06:41
看看你的查询。什么东西看起来不合适?什么东西看起来不一致? – AakashM 2012-04-18 10:59:49