一个关于写数据库的问题

ameng_98 2001-07-09 11:36:55
我想把有固定格式的文本文件写入Sql server 数据库,但不是用Sql server的导入数据的功能,而是要通过编程来实现。请问,用C++可以实现吗?这个过程中,是不是还需要知道类似ODBC,或是ADO等函数的接口?用什么语言实现要简单些?
ameng_98@263.net

恭候您的佳音,谢谢!
...全文
48 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ameng_98 2001-07-11
  • 打赏
  • 举报
回复
beyond_ml(man) 万分感谢!真的解决了一个大难题
beyond_ml 2001-07-09
  • 打赏
  • 举报
回复
我来告所你:C可以。
有两个方法:
1.安装相应数据库的ODBC接口程序。
在msdn中检索ODBC functions。你会看到标准接口调用方法。(注意SQL的版本号要相符)
使用难度:一般。
2.专门的编程接口。
Msql提供了,而且还挺好用的。只要你包含他提供的头文件就可以用了他manual里提到的函数了,不知道SQL server的怎么样?
使用难度:容易。

例如:
//Connect to Database
rc = SQLAllocHandle (SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv);
if (rc != SQL_SUCCESS)
{
fprintf (stdout, "Environment Handle Allocation failed\nExiting!!");
return (0);
}


/* Set the ODBC version to 3.0 */
rc = SQLSetEnvAttr (henv, SQL_ATTR_ODBC_VERSION, (SQLPOINTER) SQL_OV_ODBC3, 0);
if (checkError (rc, SQL_HANDLE_ENV, henv, (SQLCHAR *) "Error in Step 1 -- SQLSetEnvAttr failed\nExiting!!"))
return (0);


/* Allocate the connection handle */
rc = SQLAllocHandle (SQL_HANDLE_DBC, henv, &hdbc);
if (checkError (rc, SQL_HANDLE_ENV, henv, (SQLCHAR *) "Error in Step 1 -- Connection Handle Allocation failed\nExiting!!"))
return (0);


/* Establish the database connection */
rc = SQLConnect (hdbc, dsn, SQL_NTS, (SQLCHAR *) "", SQL_NTS, (SQLCHAR *) "", SQL_NTS);
if (checkError (rc, SQL_HANDLE_DBC, hdbc, (SQLCHAR *) "Error in Step 1 -- SQLConnect failed\n"))
return (0);
不要直接拿去用,有些函数是我打了包的,这只是连接数据库,分配数据库句柄的过程。

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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