使用C++在SQL Server中执行创建表
Excute create table in SQL Server with C++
我正试图用以下代码在SQL Server中创建一个表:
#include <iostream>
#include <windows.h>
#include <string>
#include <sql.h>
#include <sqltypes.h>
#include <sqlext.h>
using namespace std;
void main()
{
SQLHANDLE sqlevent, sqlconnection, sqlstatement;
SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &sqlevent);
SQLSetEnvAttr(sqlevent, SQL_ATTR_ODBC_VERSION, (SQLPOINTER)SQL_OV_ODBC3, 0);
SQLAllocHandle(SQL_HANDLE_DBC, sqlevent, &sqlconnection);
SQLCHAR retstring[10000];
SQLDriverConnect(sqlconnection, NULL, (SQLCHAR*)("DRIVER={SQL Server Native Client 10.0};SERVER=SERVER;DATABASE=DATABASE;UID=CrystalReports;PWD=PASSWORD"), SQL_NTS, retstring, 10000, NULL, SQL_DRIVER_NOPROMPT);
SQLAllocHandle(SQL_HANDLE_STMT, sqlconnection, &sqlstatement);
string commandline;
commandline = "CREATE TABLE NEW_TABLE01(Name VARCHAR(10), Age INT, Salary DOUBLE PRECISSION)";
if(SQL_SUCCESS != SQLExecDirect(sqlstatement, (SQLCHAR*)(commandline.c_str()), SQL_NTS)) // SQLExecDirect always failed to excute
{
cout<<"The create table sql command hasn't been excuted successfully."<<endl;
return;
}
return;
}
但是,代码if(SQL_SUCCESS != SQLExecDirect(sqlstatement, (SQLCHAR*)(commandline.c_str()), SQL_NTS))
总是返回一个TRUE
,这意味着SQL命令没有成功执行。
我已经获得了创建表的所有权限,并且手动检查了SQL server中的SQL命令,它可以工作。
我能知道我做错了什么吗?我该如何实现我的目标?
非常感谢。
受C++SQL数据库程序的启发,我想我已经得到了答案
我意识到SQL Server中有不同的模式,因此我使用CREATE TABLE [ROU].[NEW_TABLE01]
。现在我的代码运行良好。
相关文章:
- 创建一个函数以在输入为负数或零时输出字符串.第一次执行用户定义的函数
- C++从其他 constexpr 创建 lambda 不能按顺序执行 Constexpr
- 如何创建线程序列以按照启动顺序执行任务?
- 如果普通默认构造函数不执行任何操作,为什么我们不能使用 malloc 创建平凡可构造的对象?
- 如何创建一个函数来执行其中的其他函数
- 调用函数来创建 WinAPI 按钮不会执行任何操作
- 从 PHP 调用已编译的C++可执行文件来创建套接字
- Pyinstaller创建的可执行文件找不到Meipass目录中存在的DLL
- 通过创建单个线程来运行一段代码可加快执行速度
- 张量流错误:执行器无法创建内核。没有注册'Snapshot' 适用于 GPU 设备的 OpKernel 运行图像标签示例
- 如何在C 中创建动态数组,该数组将在执行时决定其大小
- 配置:错误:C++编译器无法创建可执行文件
- 如果不在派生类实现中执行此操作,"basic_streambuf"是否会创建自己的获取/放置区域?
- 如何在%appdata%中创建文件夹,在其中创建.bat文件,然后执行它?
- STD :: async的最大线程数量是多少,将异步创建和执行
- 使用 QT 创建器通过树莓派上的 Wifi 执行简单的终端命令
- 替换decorator模式以强制执行创建顺序
- 如何创建不执行任何操作的 #define
- 如何在游戏运行时创建新函数并执行它
- 使用C++在SQL Server中执行创建表