今天在修改以前开发的一个网站的时候遇到一个问题,因为功能的需要,以前的一个数字类型字段改变为文本字段,因为这个字段需要包含多个类别的ID,以前这个字段只对应一个ID的。
网站是ASP VB语言的,数据库使用的是Access
修改数据类型之后前台的查询代码就不能使用诸如xID=1这种条件了。由于现在该字段变为文本类型,其值为数组格式,如:
1,2,3,4,5
之前的sql查询语句为:select [ID] from [table] where xID=3
相应的查询代码就应该改变为:select [ID] from [table] where ','+xID+',' like '%,3,%'
记录一下,免得以后又去翻手册那么麻烦
by crazybruce ......
今天在修改以前开发的一个网站的时候遇到一个问题,因为功能的需要,以前的一个数字类型字段改变为文本字段,因为这个字段需要包含多个类别的ID,以前这个字段只对应一个ID的。
网站是ASP VB语言的,数据库使用的是Access
修改数据类型之后前台的查询代码就不能使用诸如xID=1这种条件了。由于现在该字段变为文本类型,其值为数组格式,如:
1,2,3,4,5
之前的sql查询语句为:select [ID] from [table] where xID=3
相应的查询代码就应该改变为:select [ID] from [table] where ','+xID+',' like '%,3,%'
记录一下,免得以后又去翻手册那么麻烦
by crazybruce ......
今天在修改以前开发的一个网站的时候遇到一个问题,因为功能的需要,以前的一个数字类型字段改变为文本字段,因为这个字段需要包含多个类别的ID,以前这个字段只对应一个ID的。
网站是ASP VB语言的,数据库使用的是Access
修改数据类型之后前台的查询代码就不能使用诸如xID=1这种条件了。由于现在该字段变为文本类型,其值为数组格式,如:
1,2,3,4,5
之前的sql查询语句为:select [ID] from [table] where xID=3
相应的查询代码就应该改变为:select [ID] from [table] where ','+xID+',' like '%,3,%'
记录一下,免得以后又去翻手册那么麻烦
by crazybruce ......
Take Equity Collection System as an example, Some other office collegues want to access it from home without VPN, The way to check is:
1. Check if it's limited in network, this needs to confirm with network people
2. If the step 1 passed, get the external IP address of the system, map the system to the domain name, such as Edgar.**.com. Then the domain should can be access from external. ......
网上搜集,备用
下表列出了 ANSI SQL 数据类型和等效的 Microsoft Jet 数据库引擎 SQL数据类型还有它们的有效同义字以及 等效的 Microsoft SQL Server数据类型。
ANSI SQL
数据类型
Microsoft Access
SQL 数据类型
同义词
Microsoft SQL
Server 数据类型
BIT、BIT VARYING
BINARY(参见注释)
VARBINARY、
BINARY VARYING
BIT VARYING
BINARY、VARBINARY
不支持
BIT(参见注释)
BOOLEAN、LOGICAL、LOGICAL1、YESNO
BIT
不支持
TINYINT
INTEGER1、BYTE
TINYINT
不支持
COUNTER(参见注释)
AUTOINCREMENT
(参见注释)
不支持
MONEY
CURRENCY
MONEY
DATE、TIME、TIMESTAMP
DATETIME
DATE、TIME(参见注释)
DATETIME
不支持
UNIQUEIDENTIFIER
GUID
UNIQUEIDENTIFIER
DECIMAL
DECIMAL
NUMERIC、DEC
DECIMAL
REAL
REAL
SINGLE、FLOAT4、IEEESINGLE
REAL
DOUBLE PRECISION、FLOAT
FLOAT
DOUBLE、FLOAT8、IEEEDOUBLE、NUMBER(参见注释)
FLOAT
SMALLINT
SMALLINT
SHORT、INTEGER2
SMALLINT
INTEGER
INTEGER
LONG、INT、INTEGER4
INTEGER
INTERVAL
不支持
不支持
不支持
IMAGE
LONGBINARY、GENERA ......
网上搜集,备用
下表列出了 ANSI SQL 数据类型和等效的 Microsoft Jet 数据库引擎 SQL数据类型还有它们的有效同义字以及 等效的 Microsoft SQL Server数据类型。
ANSI SQL
数据类型
Microsoft Access
SQL 数据类型
同义词
Microsoft SQL
Server 数据类型
BIT、BIT VARYING
BINARY(参见注释)
VARBINARY、
BINARY VARYING
BIT VARYING
BINARY、VARBINARY
不支持
BIT(参见注释)
BOOLEAN、LOGICAL、LOGICAL1、YESNO
BIT
不支持
TINYINT
INTEGER1、BYTE
TINYINT
不支持
COUNTER(参见注释)
AUTOINCREMENT
(参见注释)
不支持
MONEY
CURRENCY
MONEY
DATE、TIME、TIMESTAMP
DATETIME
DATE、TIME(参见注释)
DATETIME
不支持
UNIQUEIDENTIFIER
GUID
UNIQUEIDENTIFIER
DECIMAL
DECIMAL
NUMERIC、DEC
DECIMAL
REAL
REAL
SINGLE、FLOAT4、IEEESINGLE
REAL
DOUBLE PRECISION、FLOAT
FLOAT
DOUBLE、FLOAT8、IEEEDOUBLE、NUMBER(参见注释)
FLOAT
SMALLINT
SMALLINT
SHORT、INTEGER2
SMALLINT
INTEGER
INTEGER
LONG、INT、INTEGER4
INTEGER
INTERVAL
不支持
不支持
不支持
IMAGE
LONGBINARY、GENERA ......
string sql = "select a.orderId,a.UserName,b.CodeValue as Delivery ,a.DeliveryAddress,a.PhoneNum,c.CodeValue as Payment,d.CodeValue as OrderStatus,d.CodeValue as OrderStatusID,a.OrderTime,a.Merchant from (( m_Order a ";
sql += " left join ( select CodeId,CodeValue from M_DefaultValue where TableId='Delivery') as b on a.Delivery =b.CodeId )";
sql += " left join ( select CodeId,CodeValue from M_DefaultValue where TableId='Payment') as c on a.Payment=c.CodeId )";
sql += " left join ( select CodeId,CodeValue from M_DefaultValue where TableId='OrderStatu') as d on a.OrderStatus =d.CodeId ";
标记一下 ......
set adoCN =createobject("ADODB.CONNECTION")
set strCnn =createobject("ADODB.Recordset")
set rstSchema =createobject("ADODB.Recordset")
Dim I
dim n
str1 = "DBQ=E:\data1.MDB;DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
adoCN.Open str1
rstSchema.open "select * from table1",adoCN,1,1
n = rstSchema.Fields.Count - 1
......
private const string ACCESS_UPDATE_ADMIN_PASSWORD = "UPDATE [Admins] SET admin_pass=@adminPass WHERE admin_name=@adminName";
dbInstance.SetParameters("@adminPass", _adminDObj.Admin_Password);
dbInstance.SetParameters("@adminName", _adminDObj.Admin_Name);
参数的顺序必须和SQL的顺序一直,否则无法更新。如上面这2行颠倒了,则会无法更新
......
private const string ACCESS_UPDATE_ADMIN_PASSWORD = "UPDATE [Admins] SET admin_pass=@adminPass WHERE admin_name=@adminName";
dbInstance.SetParameters("@adminPass", _adminDObj.Admin_Password);
dbInstance.SetParameters("@adminName", _adminDObj.Admin_Name);
参数的顺序必须和SQL的顺序一直,否则无法更新。如上面这2行颠倒了,则会无法更新
......