acess中,如何用sql语句查询表中字段名,类型,长度,允许空等信息 5
如何没有,程序中要用到怎么办?就像有的数据转换器一样,不如不能查出,它们怎么实现的不同数据库之间的转换?难道没人知道?...
如何没有,程序中要用到怎么办?就像有的数据转换器一样,不如不能查出,它们怎么实现的不同数据库之间的转换?难道没人知道?
展开
4个回答
展开全部
在做动态建表时,遇到了一个很棘手的问题:如何判断一个表在数据库中是否存在?开始,想到的是:先去执行创建表的SQL语句,如果此语句错误,则该表可能存在于数据库当中(为什么?)
后来,感觉此法大大不妥,上网查了半天,才知道这个问题可通过系统表圆满的解决。
Access当中系统表中有一个叫Msysobjects的,Access2003中可能把几个表都隐藏了,并且默认状态下是不能对这几个表进行操作的,如果需要操作这几个表,需要对相关的权限进行相应的设置:具体如下:
1、把系统表显示出来:工具---------->选项 在显示标签中选中 “系统对象”
2、设置权限: 工具----------〉安全-----------〉用户与组的权限 在“对象名称”里面选中MsysObjects,在“权限"标 签 当中设置权限。
ACCESS2000文件格式
第一步:显示系统表
菜单:【工具】>【选项】
选项卡:试图
显示:系统对象
第二步:设置系统表的操作权限
菜单:【工具】>【安全】>【用户与组权限】
对象名称:选择需要设置权限的系统表名称(MSysObjects)
权限:复选择“查询数据”,“更新数据”,“插入数据”,“删除数据”
第三步:确定按钮,OK!
后来,感觉此法大大不妥,上网查了半天,才知道这个问题可通过系统表圆满的解决。
Access当中系统表中有一个叫Msysobjects的,Access2003中可能把几个表都隐藏了,并且默认状态下是不能对这几个表进行操作的,如果需要操作这几个表,需要对相关的权限进行相应的设置:具体如下:
1、把系统表显示出来:工具---------->选项 在显示标签中选中 “系统对象”
2、设置权限: 工具----------〉安全-----------〉用户与组的权限 在“对象名称”里面选中MsysObjects,在“权限"标 签 当中设置权限。
ACCESS2000文件格式
第一步:显示系统表
菜单:【工具】>【选项】
选项卡:试图
显示:系统对象
第二步:设置系统表的操作权限
菜单:【工具】>【安全】>【用户与组权限】
对象名称:选择需要设置权限的系统表名称(MSysObjects)
权限:复选择“查询数据”,“更新数据”,“插入数据”,“删除数据”
第三步:确定按钮,OK!
展开全部
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();
}
}
}
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();
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
似乎没有~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、如果优差生表存在
insert
into
优差生
select
学号,科目,成绩
from
考试
2、优差生表不存在,这个在sqlserver中运行,access我这里没装,没法测试了
select
学号,科目,成绩
into
优差生
from
考试
insert
into
优差生
select
学号,科目,成绩
from
考试
2、优差生表不存在,这个在sqlserver中运行,access我这里没装,没法测试了
select
学号,科目,成绩
into
优差生
from
考试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询