acess中,如何用sql语句查询表中字段名,类型,长度,允许空等信息
答案:3 悬赏:80 手机版
解决时间 2021-04-08 22:25
- 提问者网友:爱了却不能说
- 2021-04-08 17:58
如何没有,程序中要用到怎么办?就像有的数据转换器一样,不如不能查出,它们怎么实现的不同数据库之间的转换?难道没人知道?
最佳答案
- 五星知识达人网友:杯酒困英雄
- 2021-04-08 18:23
在做动态建表时,遇到了一个很棘手的问题:如何判断一个表在数据库中是否存在?开始,想到的是:先去执行创建表的SQL语句,如果此语句错误,则该表可能存在于数据库当中(为什么?)
后来,感觉此法大大不妥,上网查了半天,才知道这个问题可通过系统表圆满的解决。
Access当中系统表中有一个叫Msysobjects的,Access2003中可能把几个表都隐藏了,并且默认状态下是不能对这几个表进行操作的,如果需要操作这几个表,需要对相关的权限进行相应的设置:具体如下:
1、把系统表显示出来:工具---------->选项 在显示标签中选中 “系统对象”
2、设置权限: 工具----------〉安全-----------〉用户与组的权限 在“对象名称”里面选中MsysObjects,在“权限"标 签 当中设置权限。
ACCESS2000文件格式
第一步:显示系统表
菜单:【工具】>【选项】
选项卡:试图
显示:系统对象
第二步:设置系统表的操作权限
菜单:【工具】>【安全】>【用户与组权限】
对象名称:选择需要设置权限的系统表名称(MSysObjects)
权限:复选择“查询数据”,“更新数据”,“插入数据”,“删除数据”
第三步:确定按钮,OK!
后来,感觉此法大大不妥,上网查了半天,才知道这个问题可通过系统表圆满的解决。
Access当中系统表中有一个叫Msysobjects的,Access2003中可能把几个表都隐藏了,并且默认状态下是不能对这几个表进行操作的,如果需要操作这几个表,需要对相关的权限进行相应的设置:具体如下:
1、把系统表显示出来:工具---------->选项 在显示标签中选中 “系统对象”
2、设置权限: 工具----------〉安全-----------〉用户与组的权限 在“对象名称”里面选中MsysObjects,在“权限"标 签 当中设置权限。
ACCESS2000文件格式
第一步:显示系统表
菜单:【工具】>【选项】
选项卡:试图
显示:系统对象
第二步:设置系统表的操作权限
菜单:【工具】>【安全】>【用户与组权限】
对象名称:选择需要设置权限的系统表名称(MSysObjects)
权限:复选择“查询数据”,“更新数据”,“插入数据”,“删除数据”
第三步:确定按钮,OK!
全部回答
- 1楼网友:渡鹤影
- 2021-04-08 19:15
1、如果优差生表存在
insert into 优差生
select 学号,科目,成绩 from 考试
2、优差生表不存在,这个在sqlserver中运行,access我这里没装,没法测试了
select 学号,科目,成绩 into 优差生 from 考试
- 2楼网友:一叶十三刺
- 2021-04-08 19:06
access 操作
delete from tbl_Record where IOTime<#2009-8-1#
select * from tbl_Record where IOTime<#2009-9-1#
update tbl_record set iotime=DateAdd("m", 1,iotime)
你查类型,长度,空进库看不就可以了.另附java代码
package test;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class RAccess{
public static void main(String[] args){
try{
Driver driver = (Driver) Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
DriverManager.registerDriver(driver);
//String url = "jdbc:odbc:Driver=MDBToolsODBC;DSN=ATD";
Connection connection = DriverManager.getConnection(args[0]);
Statement statement = connection.createStatement();
ResultSet set = statement.executeQuery("SELECT * FROM RECORD WHERe FORMAT(IOTime,'yyyymmddHhNnSs')>'20090910000000'");
while(set.next()){
System.out.println(set.getObject(1));
}
set.close();
statement.close();
connection.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯