问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

asp+sql server是不是就比asp+access安全多了?

发布网友 发布时间:2022-04-14 20:42

我来回答

4个回答

热心网友 时间:2022-04-14 22:11

,sql server并没有将它设为自动编号型,我们需在SQL创建语句中加上identity,表示自动编号!
2.转化时,跟日期有关的字段,SQL SERVER默认为smalldatetime型,我们最好将它变为datetime型,因为datetime型的范围比smalldatetime型大。我遇见这种情况,用smalldatetime型时,转化失败,而用datetime型时,转化成功。
3.对此两种数据库进行操作的sql语句不全相同,例如:在对ACCESS数据库进行删除纪录时用:%22delete * from user where id=10%22,而对SQL SERVER数据库进行删除是用:%22delete user where id=10%22.
4.日期函数不相同,在对ACCESS数据库处理中,可用date()、time()等函数,但对SQL SERVER数据库处理中,只能用datediff,dateadd等函数,而不能用date()、time()等函数。
5.在对ACCESS数据库处理中,sql语句中直接可以用一些VB的函数,像cstr()函数,而对SQL SERVER数据库处理中,却不能用。1,对于日期字段字段
access表示为:#1981-28-12#
SQLSERVER2000表示为:‘‘1981-02-12‘‘
2,SQL语句区别,select ,update 在对单表操作时都差不多,
但多表操作时update语句的区别ACCESS与SQLSERVER中的UPDATE语句对比:
SQLSERVER中更新多表的UPDATE语句:
UPDATE Tab1
SET a.Name = b.Name
FROM Tab1 a,Tab2 b
WHERE a.ID = b.ID;
同样功能的SQL语句在ACCESS中应该是
UPDATE Tab1 a,Tab2 b
SET a.Name = b.Name
WHERE a.ID = b.ID;
即:ACCESS中的UPDATE语句没有FROM子句,所有引用的表都列在UPDATE关键字后.
更新单表时:都为:
UPDATE table1 set ab=‘12‘,cd=444 where ….
3,delete语句
access中删除时用:delete * from table1 where a>2 即只要把select 语句里的select 换成delete就可以了。
sqlserve 中则为: delete from table1 where a>2 即没有*号中国2006-4-15 19:27:48
4,as 后面的计算字段区别
access中可以这样:select a,sum(num) as kc_num,kc_num*num as all_kc_num 即可以把AS后的字段当作一个数据库字段参与计算。
sqlserver 中则为:select a,sum(num) as kc_num,sum(num)*num as all_kc_num 即不可以把AS后的字段当作一个数据库字段参与计算。
5,[.]与[!]的区别
access中多表联合查询时:select tab1!a as tab1a,tab2!b tab2b from tab1,tab2 ,中间的AS可以不要。
sqlserve 中则:select tab1.a as tab1a,tab2.b tab2b from tab1,tab2 ,中间的AS可以不要。
6,联合查询时,
access中多表联合查询:‘select a,b from(
select a,b from tab1 where a>3 union select c,d from tab2 ) group by a,b
sqlserve 中则‘select a,b from(
select a,b from tab1 where a>3 union select c,d from tab2 ) tmptable group by a,b即要加一个虚的表tmptable,表名任意。—
7,access升级到sqlserver时,
可以用sqlserver的数据导入工具导入数据,但要做必要的处理。
access中的自动编号,不会自动转换SQL中的自动编号,只能转换为int型,要把它手工改成标识字段,种子为1,把所有导入被sqlserver转化成的以n开头的字段类型的n去掉,如nvarchar->varchar.把需要有秒类型的日期字段改成datatime类型(SQL会把所有的日期开转化成smalldatetime型)
8,true与1=1
access用where true表示条件为真,
sqlserver用where 1=1表示条件为真
9,判断字段值为空的区别
普通空:
Access和sql server一样 where code is null 或 where code is nol null
条件空:
Access:iif([num] is null,0,[num]) 或 iif([num] is null,[num1],[num])
SQLServer: isnull([num],0) 或 isnull([num],[num1])
10,SQL语句取子串的区别
access:MID(字段,n1,[n2]),LEFT(字段,n),RIGHT(字段,n)
如:select left(cs1,4)+‘-‘+cs2 as cs3
SQLServer: SUBSTRING(expression, start, length)
如:select substring(cs1, 1, 2) + substring(cs1, 4, 2) + ‘-‘ + cs2 as cs3
补充:

ACCESS与SQL2000的SQL语句有区别的
比如now()在SQL2000中必须改为getdate()
还有关键词必须加[] ,像ACCESS中字段名用name SQL20000必须加[name] 否则出错

数据库连接字重新配置

1. access 转sql 数据库后需要建立各表关键字以及递增量设置部分数据类型需要重新定义
2. now() 函数是可接受的,但在日期比较过程中需要用 getdate()
3. 保留字需要加 []
4. 单双引号需要转变
5. 遵循标准sql定义(最关键的一条)

看看MSSQLServer联机丛书。

1.ACCESS的数据库中的自动编号类型在转化时,sql server并没有将它设为自动编号型,我们需在SQL创建语句中加上identity,表示自动编号!
2.转化时,跟日期有关的字段,SQL SERVER默认为smalldatetime型,我们最好将它变为datetime型,因为datetime型的范围比smalldatetime型大。我遇见这种情况,用smalldatetime型时,转化失败,而用datetime型时,转化成功。
3.对此两种数据库进行操作的sql语句不全相同,例如:在对ACCESS数据库进行删除纪录时用:%22delete * from user where id=10%22,而对SQL SERVER数据库进行删除是用:%22delete user where id=10%22.
4.日期函数不相同,在对ACCESS数据库处理中,可用date()、time()等函数,但对
SQL SERVER数据库处理中,只能用datediff,dateadd等函数,而不能用date()、time()等函数。
5.在对ACCESS数据库处理中,sql语句中直接可以用一些VB的函数,像cstr()函数,而对SQL SERVER数据库处理中,却不能用。

热心网友 时间:2022-04-14 23:29

是很多,我建议你手工创建sql数据库并手工建表,这样最好,你可以完全的熟悉这些表的字段,并且你还可以在在这些表的字段后面加上备注说明一下这些字段是什么意思。如果表很多,你又嫌麻烦,就找个ACCESS转sql的软件吧。百度一下有很多。

另外你要保持asp文件也可以用,这个问题不大的。access和sql2000的SQL语句基本通用,有少少区别,主要注意日期的查询,在access里日期查询的定界符是#号,而sql是单引号,还有像instr这个函数,access与sql2000都有这个函数,但其参数的顺序是不同的。
其他基本都差不多的了。

热心网友 时间:2022-04-15 01:04

不是这样。安不安全取决于你的ASP程序的写法,而不在于用什么数据库。

热心网友 时间:2022-04-15 02:55

这个问题比较客观了,如果服务安全做的不好,sql的数据一样可以被读入。和ASP读取数据的方法也有关系。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
想你花就开了是什么意思 ...轻弹簧下端固定在水平面上.一个小球从弹簧正上方某一高度处由静止... ...弹簧下端固定在水平地面上,质量为m的小球从轻弹簧的正上方某一高处... ...一竖直弹簧下端固定于水平地面上,小球从弹簧的正上方高为h的地方自... ...结婚证,孩子户口也在女方家,男方可以要求拿抚养权吗? 小男孩适合戴哪些翡翠小男孩适合戴什么翡翠 产后尿道口痛是什么原因 产后尿道口疼怎么回事 ...同种点电荷连线上和中垂线上电势的变化规律 办理北京银行需要什么手续 一岁两个月宝宝能吃鸽子汤吗 7岁小孩可以吃鸽子汤吗? 如何用PS在纸上画出斜线,我想将一张纸分成多个三角形,并在三角形中打字 云米是什么牌子? 山药冻后变色还能吃吗 山药受冻变色还能吃吗 冻了的山药为什么不能吃? 茅台酒是酱香酒是真的假的? 常小聚酱香酒会不会有假的啊,普通人能分辨出来吗? 茅台家常福1992珍藏朋友送的,请问这个酒是真的还是假的 茅台镇原浆酒 52度 浓酱兼香型 品古牌 是真的还是假的? 这个赖茅酒是真是假? 请说明原因,谢谢! 雄正酱香酒是真的吗 赖益酱53度白酒多少钱一瓶?是真酒还是酒假 抖音卖酱香酒是真是假 如何鉴别酱酒的真假? 到哪里找到《桥边姑娘》简谱? 动漫社 社团cosplay成本? 泉州摄影棚 盗墓笔记cos的拍摄地点最好是北京的 不用按小说里的地点找 只要拍出来很好看就行 越南150k是多少钱人民币 150万越南盾兑人民币多少钱 1越南盾等于多少人民币 15亿越南盾多少人民币 15兆越南盾换多少人民币 我把对方拉黑删除 对方还能看到我 和头像吗 或者能找到我加到 你是人吗用文言文怎么说 熟悉的陌生人用古文怎么说? 人的年龄用古文怎么说 走路的人用古文怎么说? 凡人(世间之人,普通人)用古文怎么说?感激不尽。 (有人)用古文怎么说? 人要有善意用古文怎么说 我敬佩的人用文言文怎么说 蒲剧火焰驹是那个朝代的讲述的是什么故事 关于access datediff()的问题 学生证磁条没磁了,但还想买学生票,能不能在网上买了票但不取,到了火车上和工作人员解释一下? 没磁条学生证能不能买到火车票 我的华为P10只有截屏功能,没有录制屏幕视屏的功能 ZYMOL蜡怎么样? 和3M。龟牌想比较哪个更好?