求解在SQL中使用了where列所遇到的問題

來源:互聯網
上載者:User
問題  

我原先用MDB的資料庫,用ASP寫的一個系統。

由於沒有經驗,使用了where欄位。

最近由於需要把資料庫導成SQL的,導成功之後。我在調試時發現很多的使用了"rs.update"的代碼會提示在where附近有語法錯誤。鬱悶的我查了很多資料,同時也自己試了大半天。直到下午我才最終肯定,是where欄位出了問題。

調試的結論是用update語句可以,但就是不能用rs.update來實現更新;更名正常,但工作量太大;刪去正常,但不能刪。在7917375群內和氣氣等人討論好長時間也拿不出什麼好的其它的方法來。所以發到這裡,希望有人能夠幫忙解決。

這一次是用不了,我只好麻煩地替換可以替換的,一次次地調試了。。

在此向各位同仁提醒,在表單設計時最好不要用資料庫保留欄位。
在SQL中表現為自動更改為[段名],在MDB請恕我愚鈍看不出來。。

==================附調試資訊

sql:
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[test]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[test]
GO

CREATE TABLE [dbo].[test] (
 [id] [bigint] IDENTITY (1, 1) NOT NULL ,
 [where] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
 [names] [char] (10) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
第一次導這樣的指令碼,希望能用。

ASP:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
 connstr="driver={SQL Server};server=localhost;uid=sa;pwd=;database=test"
 set conn=Server.CreateObject("ADODB.Connection")
  conn.Open connstr

 sql="select * from test where id=1"
 set rs=server.createobject("adodb.recordset")
 rs.open sql,conn,1,3
 rs("names")="test"
  rs.update
 rs.close
 set rs=nothing

set conn=nothing
%>




相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。