VB.NET学习笔记:ADO.NET操作ACCESS数据库——书写SQL语句时处理系统关键字如DEFAULT、ON、position等
发布日期:2021-06-29 11:32:13
浏览次数:2
分类:技术文章
本文共 2152 字,大约阅读时间需要 7 分钟。
一、默认值和级联更新删除关键字DEFAULT和ON
DEFAULT和ON是MS ACCESS SQL系统关键字,SQL语句中如果含有系统关键字,在ACCESS界面是无法执行的。如下SQL语句:
Create TABLE periodtbl(PDID AUTOINCREMENT,PDname text(10) NOT NULL,CONSTRAINT pk_periodtbl_PDID PRIMARY KEY (PDID),CONSTRAINT UQ_periodtbl_PDname UNIQUE (PDname));
和
Create TABLE studenttbl(STUID AUTOINCREMENT,STUname text(20) DEFAULT '请录入姓名',,PDID INTEGER NOT NULL,CONSTRAINT PK_studenttbl_STUID PRIMARY KEY (STUID),CONSTRAINT FK_studenttbl_periodtbl_PDID FOREIGN KEY (PDID) REFERENCES periodtbl(PDID) ON Delete NO ACTION ON Update CASCADE);
执行进弹窗提示语法错误,如图:
但在VB.NET中却可以很好的执行:Dim sqlstring As String = "Create TABLE studenttbl" & Environment.NewLine _ & "(" & Environment.NewLine _ & "STUID AUTOINCREMENT," & Environment.NewLine _ & "STUname text(20) DEFAULT '请录入姓名'," & Environment.NewLine _ & "PDID INTEGER NOT NULL," & Environment.NewLine _ & "CONSTRAINT PK_studenttbl_STUID PRIMARY KEY (STUID)," & Environment.NewLine _ & "CONSTRAINT FK_studenttbl_periodtbl_PDID FOREIGN KEY (PDID)" & Environment.NewLine _ & " REFERENCES periodtbl(PDID)" & Environment.NewLine _ & " ON Delete NO ACTION" & Environment.NewLine _ & " ON Update CASCADE" & Environment.NewLine _ & ");" '连接数据库 Dim conn As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\KingOne\Desktop\data\Database.accdb") '打开数据库 conn.Open() '生成命令 Dim cmd As New OleDbCommand(sqlstring, conn) '执行命令 cmd.ExecuteNonQuery() '关闭数据库 conn.Close()
执行后打开ACCESS文件查看效果:
二、vb.net系统关键字 position
在ACCESS界面可以很好的执行“SELECT position.* FROM position;”,但放到VB.NET程序中执行却报错,如图:
把SQL语句修改为SELECT [position].* FROM [position]后正常执行命令。三、原因分析
DEFAULT和ON是MS ACCESS SQL系统关键字所以无法在ACCESS界面执行,而position是VB.NET关键字所以无法在VB.NET中执行。对于MS ACCESS系统关键字可以直接放到VB.NET中执行,而对于VB.NET程序的系统关键字做表名或字段名用[]括起,当然最好不要使用系统关键字为妥。
转载地址:https://blog.csdn.net/zyjq52uys/article/details/89136156 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2024年04月06日 18时14分34秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
硬货 | Redis 性能问题分析
2019-04-29
Kafka为什么这么快?
2019-04-29
灵魂四连问:API 接口应该如何设计?如何保证安全?如何签名?如何防重?
2019-04-29
一个依赖搞定 Spring Boot 反爬虫,防止接口盗刷!
2019-04-29
酸爽!IDEA 中这么玩 MyBatis,让编码速度飞起!
2019-04-29
已拿 Offer!字节跳动面试经验分享
2019-04-29
汇总一下 Intellij IDEA 常用的牛逼插件!
2019-04-29
给 Spring Boot 项目减减肥!18.18M 到 0.18M 是如何做到的?
2019-04-29
Java高并发之设计模式,设计思想
2019-04-29
再见,Navicat!我爱上了别人...
2019-04-29
我,一个靠GitHub打赏谋生的码农,年入十万美元
2019-04-29
面试官扎心一问:数据量很大,分页查询很慢,有什么优化方案?
2019-04-29
说说 Spring MVC 的执行过程?
2019-04-29
他被称为"中国第一程序员",一人之力单挑微软,如今拜入武当修道
2019-04-29
TCP协议面试灵魂10问,建议收藏~
2019-04-29
消息队列常见的几种使用场景介绍!
2019-04-29
害!天天在公司写业务代码,面几家挂几家,感觉自己快废了!
2019-04-29
重磅!阿里推出国产开源的 JDK!
2019-04-29