征集用VB+ADO打开各种数据库的连接方法,请各路高手帮忙!

Yang_ 2002-05-09 08:24:12
问题是这样的,一个软件需要和用户原有的数据库接口,但用户的数据库可能是各种各样的,现在想做一个接口程序,让用户选择数据库的类型,输入服务器名称(或者目录)、数据库名称、表名、需要交流的各数据的字段名、用户名、密码,接口程序打开用户数据库,添加或者读取用户数据库数据。但环境有限,不可能什么数据库都可以安装,有些数据库可能我都没有听说过。由于用户的类型多样,不想用ODBC和DSN。

请各路高手提供类似这样的信息:
SQL SERVER :
连接串:"Provider=sqloledb;Data Source=" & ServerName & ";Initial Catalog=" & DatabasName & ";User Id=" & UserName & ";password=" & PassWord & "; "
插入语句:"insert into " & TableName & "(" & FieldNameChar & "," & FieldNameNum & "," & FieldNameDate & ") values ('Yang_',100,'2002-5-9')"
查询语句:"select " & FieldNameChar & "," & FieldNameNum & "," & FieldNameDate & " from " & TableName & " where " & FieldNameChar & "='Yang_' and " & FieldNameBum & "=100 and " & FieldNameDate & " butween '2002-5-9' and '2002-5-20'"

Access :
连接串:"Provider=MSDASQL.1;Persist Security Info=False;Extended Properties=DBQ=" & ServerName & DataBaseName & ";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;ImplicitCommitSync=Yes;MaxBufferSize=512;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=" & UserName & ";UserCommitSync=Yes; PWD=" & PassWord & ";"
插入语句:"insert into " & TableName & "(" & FieldNameChar & "," & FieldNameNum & "," & FieldNameDate & ") values ('Yang_',100,#2002-5-9#)"
查询语句:"select " & FieldNameChar & "," & FieldNameNum & "," & FieldNameDate & " from " & TableName & " where " & FieldNameChar & "='Yang_' and " & FieldNameBum & "=100 and " & FieldNameDate & " butween #2002-5-9# and #2002-5-20#"

我现在才搞定SQL SERVER 和ACCESS,其他的请大家帮忙,重点是ORACLE、SYBASE、MYSQL、INTERBASE、DB2、Paradox、文本文件、EXCEL、DBF等,可能还有其他许多我没有听说过的数据库,也多谢提供。

如果嫌麻烦,写成其他格式也可以,只要估计我能看懂,看不懂时我再问。
谢谢!


...全文
203 28 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
Yang_ 2002-05-17
  • 打赏
  • 举报
回复
特别感谢karma(无为) MM!

INTERBASE、DB2、Paradox等数据库有没有语句的差别现在还不知道,不过不管有没有答案,今天晚上结贴!!
LuoGD 2002-05-13
  • 打赏
  • 举报
回复
我有一个DLL,它能实现对任意数据库的连接和查询。
LuoGD@163.com
zhuzhichao 2002-05-13
  • 打赏
  • 举报
回复
Sybase和SQL Server的處理方式是一樣的.
Yang_ 2002-05-13
  • 打赏
  • 举报
回复
现在主要是语句区别的问题,特别是字符型数据和日期数据常量的表示法,请熟悉SYBASE、INTERBASE、DB2、Paradox的高手回答!
signboy 2002-05-11
  • 打赏
  • 举报
回复
sybase ,db2?
Happiness 2002-05-11
  • 打赏
  • 举报
回复
学习!
N_chow 2002-05-11
  • 打赏
  • 举报
回复
加到我的最愛,呵呵,謝謝 karma(无为) JJ.
karma 2002-05-11
  • 打赏
  • 举报
回复
http://www.able-consulting.com/ADO_Conn.htm
KingSunSha 2002-05-10
  • 打赏
  • 举报
回复
对于oracle的date类型,操作的时候最好如小草所言,用to_date()函数进行转换。但是有一种特例,可以直接用字符串来操作:当提供的字符串符合NLS_DATE_FORMAT要求的时候,ORACLE认为是合法的,比如

NLS_DATE_FORMAT is 'DD-MON-YY'

select * from test1
where trunc(a1) >= '09-MAY-02'
and trunc(a1) <= '10-MAY-02';

另TO 小草:为什么要加上trunc(),好像没有用处啊?
zhuzhichao 2002-05-10
  • 打赏
  • 举报
回复

date類型字段插入時也不能插入字符型.
要用to_date函數轉成date型才能插入.

一般來說,所有的PL/SQL語句中都要有";"表示語句的結束.

但是用OraCn.Execute 來執行可能不需要.

Yang_ 2002-05-10
  • 打赏
  • 举报
回复
竹兄:
谢谢!
插入也要这么处理吗,有些数据库如ORACLE、SYBASE我没法安装后试,所以小的错误都可能要到客户处才能发现。
还有,那个“;”是不是必须的,飘香兄写的没有分号。
zhuzhichao 2002-05-10
  • 打赏
  • 举报
回复

我不用VB和ADO方式.
因此有很多東西無法提出建議.

但是Oracle的PL/SQL中的日期型處理是不一樣.
不能用字符直接處理.

需要這樣寫:
select * from test1
where trunc(a1) >= trunc(to_date('20020509','yyyymmdd'))
and trunc(a1) <= trunc(to_date('20020510','yyyymmdd'));
或者:
select * from test1
where a1 >= to_date('20020509 00:00:00','yyyymmdd hh24:mi:ss')
and a1 <= to_date('20020510 23:59:59','yyyymmdd hh24:mi:ss');


Yang_ 2002-05-10
  • 打赏
  • 举报
回复
playmud(观望~淡漠~孤傲) :
领导同志,不要光“阅”,给批示补充一下嘛!
playmud 2002-05-10
  • 打赏
  • 举报
回复
Yang_ 2002-05-10
  • 打赏
  • 举报
回复
已经搞定了文本文件、EXCEL、DBF,主要参考飘香兄的方法,请飘香兄在以下帖子领分,这个帖子继续。
http://www.csdn.net/expert/topic/710/710193.xml?temp=.3870508

Yang_ 2002-05-10
  • 打赏
  • 举报
回复
再次谢谢飘香兄!

三千兄:
ORACLE有好多版本,用ADO连接它们的方法都一样吗?
ORACLE的PL/SQL在语法上是不是有不同,特别是日期型常量的表示方法。
Yang_ 2002-05-10
  • 打赏
  • 举报
回复
UP
N_chow 2002-05-10
  • 打赏
  • 举报
回复
也是用Create Database

C:\Mysql\bin>mysql
mysql>Create database CCTV_Test;
mysql>use CCTV_Test;
mysql>Create table UserList(name varchar(20));
....
Yang_ 2002-05-10
  • 打赏
  • 举报
回复
mysql-max-4.0.1-alpha-win已经安装,还不知道怎么建库!
N_chow 2002-05-10
  • 打赏
  • 举报
回复
我電腦上的是 3.23.41-NT, 不怎麼用。:)
加载更多回复(8)
访问真八字排盘系统介绍: 1、八字排盘 八字排盘是将年月日时按照天干地支的形式进行排列,一个时间单位代表了一个柱。八字由年柱、月柱、日柱和时柱共四个柱组成,也被称为四柱八字。八字学中基于中国阴阳五行、天干地支与刑冲克害、以及民间盲派的神煞论等方式,进一步预测爱情顺遂、工作高低、姻缘好坏、财富高低、学业成就、身体健康等事的学问。 八字排盘由以下元素组合:年月日时四柱、大运干支、胎元 、流年干支、十神、地势、神煞等。生辰八字不只是把干支历计算出来,而还要遵守月令、节令的强弱,时辰的阴阳变化进行校正。排盘分析,就是根据出生者的性别、天干地支的阴阳五行关系、进一步推算出来的一套方法论,给预测者做人生吉凶的参考数据,在未来事业、财运、婚姻、家庭等问题时,能做出风险较低的决策。 八字排盘怎么看 八字排盘由年、月、日、时四柱组成,每柱包含一个天干和一个地支,共八个字。年柱代表出生的年份,月柱代表出生的月份,日柱代表出生的日期,时柱则代表出生的时辰。每个柱的干支组合都会对个人的命运产生影响。天干地支旁边标注的正财、偏财、偏印、正印、比肩、劫财、食神、伤官、正官、七杀等,称为十神。 2、八字排盘软件介绍 我们是腾讯云市场金牌合作伙伴,广州正规软件开发公司,开发的八字排盘系统数据最全面精准,我们八字排盘采用最精确的排盘程序,而且运用“真太阳时”,进行更精确的时间划分。大家都知道我们使用的北京时间,是统一规定的标准时间。而八字排盘需要相对于太阳方位的天文时间,即平太阳时。我们国家地大物博,北京时间19时,哈尔滨已经夜幕降临,而新疆却还是太阳高挂,这时哈尔滨的天文时间可能在20:00以后,而新疆的天文时间可能在16时以前。北京时间是东经120度经线的平太阳时,如果您出生地的经度与北京时间所处的经度差异较大,或者处于单数时间点的前后,比如6点差一刻,8点,10点15分等

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧