在你谴责我如何在这里问这个问题之前:'我想指出我确实谷歌了。在某些情况下我甚至去了第3页。 战栗
所以这是交易:
我正在尝试审核我们拥有的数据库,为几个表设置UPDATE
,INSERT
,DELETE
语句的触发器。触发器是成功创建和链接的。每个触发器执行一个存储过程,将所需数据插入到我们的 tick_audit 表中。
此信息是:
该表还有一个PRIMARY_KEY,AUTO_INCREMENT id 字段。
当我尝试创建存储过程
时create procedure update_tick_user
@UserId varchar(32),
@ClientId varchar(32),
@Table varchar(64),
@TableRecord varchar(512),
@Descr varchar(128),
@RemoteIP varchar(16)
as
begin
insert into tick_audit ('user_account', 'client_id', 'date_time', 'table_name', 'table_record_id', 'descr', 'remote_ip_address')
values
(@UserId, @ClientId, getdate(), @Table, @TableRecord, @Descr, @RemoteIP)
end;
我收到以下错误:
消息207,级别16,状态1,过程update_tick_user,第10行 列名称'user_account'无效。
每列重复一次。我跑的时候
exec sp_columns tick_audit
我从 tick_audit 获取所有列,甚至将其名称复制到插入的列字段中,我得到上述错误。我只是在运行
时遇到错误insert into tick_audit
('user_account', 'client_id', 'date_time', 'table_name', 'table_record_id', 'descr', 'remote_ip_address')
values
('', '', getdate(), '', '', '', '')
每当我尝试在不同的表上插入,更新或删除时,我都没有错误。有没有什么我可以试着找出我的桌子是否有问题,或者是一些超级秘密的hocus-pocus,仪式式方法?
这是我到目前为止所尝试的内容:
交叉双手,希望有人可以帮助我。
答案 0 :(得分:2)
删除(require '[org.tobereplaced.nio.file :refer [create-symbolic-link! ] :as nio])
(defn createSimLink [ targetPath newLink ]
(let [theName (.getName (File. targetPath))]
(try
(nio/create-symbolic-link! (str newLink "/" theName) targetPath )
(catch Exception e (prn "error " e)))))
(createSimLink "c:/tmp/test.txt" "c:/tmp/myFolder")
以使'
如下
insert
答案 1 :(得分:0)
不要使用单引号arround列名。
MySQL Workbench
答案 2 :(得分:0)
使用括号代替引号:
insert into tick_audit ([user_account], [client_id], [date_time], [table_name], [table_record_id], [descr], [remote_ip_address])
values (@UserId, @ClientId, getdate(), @Table, @TableRecord, @Descr, @RemoteIP)
单引号适用于文字。对于分隔对象名称,您应该使用括号或双引号,但只有在QUOTED_IDENTIFIER
设置为ON
时才能使用双引号。