问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c++和MSSQL

发布网友 发布时间:2022-04-10 09:42

我来回答

2个回答

懂视网 时间:2022-04-10 14:03

安装SQL Server on Linux之后,在命令行下使用sqlcmd,你会发现代码提示,语法高亮,甚至连多行复制都不支持,相比之下,MySQL的命令行客户端还好用多了。只做简单的命令管理还行,做数据库开发肯定还得使用SSMS才行。不过,微软不久前发布了一款针对SQL Server新命令行的交互工具——mssql-cli,详细见SQL Server Blog有介绍: https://blogs.technet.microsoft.com/dataplatforminsider/2017/12/12/try-mssql-cli-a-new-interactive-command-line-tool-for-sql-server/   该工具提供了以下特性:
  • T-SQL IntelliSense T-SQL智能感知
  • Syntax highlighting 语法高亮
  • Pretty formatting for query results, including Vertical Format 查询结果格式美化,包括垂直格式
  • Multi-line edit mode 多行编辑模式
  • Configuration file support 支持配置文件
  • 技术分享图片

    Figure-1:智能提示   技术分享图片 Figure-2:格式化显示

     

     

    2. 安装 下面就来试用下这款工具吧。这里仅以CentOS7下演示,其他平台可参考SQL Server Blog,或者在Github上有更详细的安装指引:https://github.com/dbcli/mssql-cli/blob/master/doc/installation_guide.md     2.1 安装最新的EPEL(Extra Packages for Enterprise Linux) [root@134test ~]# yum install epel-release   2.2 安装相关依赖 [root@134test ~]# yum install libunwind libicu python-pip   2.3 安装mssql-cli [root@134test ~]# pip install mssql-cli   2.4 使用mssql-cli登录 [root@134test ~]# mssql-cli -U sa Password: Version: 0.8.0 Mail: sqlcli@microsoft.com Home: http://github.com/dbcli/mssql-cli master>SELECT @@version +--------------------+ | (No column name) | |--------------------| | Microsoft SQL Server 2017 (RC2) - 14.0.900.75 (X64) Jul 27 2017 08:53:49 Copyright (C) 2017 Microsoft Corporation Developer Edition (64-bit) on Linux (CentOS Linux 7 (Core)) | +--------------------+ (1 row affected) Time: 0.103s master>       3. 体验 在Xshell使用mssql-cli,有以下几点心得,欢迎补充。
  • 语法高亮,智能提示,查询结果格式美化都有了。
  • 如果横向显示的字段过长,会自动把表的字段以纵向的格式显示,并支持逐行上下翻。
  • 直接回车即可执行语句,无须以GO结束。
  •   不过也发现几个问题:
  • 直接粘贴多行语句还是会出错。(难道我复制的姿势不对?)
  • 查询返回的数据较多,返回结果较慢;查询较大的数据,很慢。若是等不及按下两次ctrl+c,会如下错误。
  • 字段的内容过长无法显示完整。
  • 技术分享图片

    Figure-3:查询过程中两次ctrl+c后报错   技术分享图片 Figure-3:字段的内容显示不完整     4. 总结 在命令行环境下有所增强的功能还是挺好的,适合于没有图形化界面的场景下使用。如果用于开发、管理或查询等,有条件的情况下,还是建议在Windows平台下使用SSMS吧。   另外再补充一下:http://www.codeplex.com/已经不再更新,要下载SQL Server的示例数据库直接到Github(https://github.com/Microsoft/sql-server-samples/releases/tag/adventureworks)下载更方便。  

     

    体验mssql-cli

    标签:list   方便   高亮   直接   适合   美化   bit   result   master   

    热心网友 时间:2022-04-10 11:11

    不是在C++中加入SQL语句,而是使用C++连接数据库,并执行SQL语句,以获得数据

    C++中连接数据库并执行SQL语句,主要有以下几种方式:
    通用数据库连接技术:
    DAO,OLE DB,ADO,ADO.NET(C++/CLI),ODBC等
    其中DAO是MFC内置的,主要用于连接Access
    OLE DB是底层连接技术,比较复杂,但很强大
    ADO对OLE DB进行了封装,调用方便,支持数据库也多
    ADO.NET主要面向.NET平台,可以使用C++/CLI调用
    ODBC是一种通用调用标准,比较普遍
    专用数据库连接技术,就相当于是数据库上为自己做的一套C++库:
    比如MySQL用libmysql

    以ODBC为例:
    如果你要连接MSSQL,需要有MSSQL的ODBC驱动,安装MSSQL时会自动安装,然后设置数据源DSN,然后使用ODBC的通用API调用。
    如果你使用VC,那么MFC有封装
    代码执行次序大体为:
    1.连接数据库
    2.执行SQL语句
    3.获取数据库返回的结果
    4.用完数据库后释放数据库链接
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    dnf白手抓头技能在那里学习 DNF的白手可以偷学技能吗? DNF阿尔伯特那个任务能偷学到技能 最好说说都能偷学什么谢谢了,大神帮 ... dnf白手如何偷学技能。。能学到什么。。不要转我到官方 说明白点... 上海ocp如何报考 混合物都有哪些 常见的混合物有什么 五峰芽毛尖的特点 五峰芽毛尖的功效与作用 五峰毛尖和芽茶的区别 如何修复乱码pdf文件 离婚的女人梦见自己穿红色鞋子? 白菜做饺子馅,是用白菜邦还是用白菜叶? 请教大家一个问题,用白菜包饺子,用白菜叶好还是用白菜帮啊?谢谢! 包菜馅的饺子的做法 大白菜可以与包菜混合一起做胶子馅吗? 关于包菜饺子的问题 包饺子的白菜是哪种呢?是大白菜还是卷心菜? 饺子馅用白菜好还是包菜好? 饺子馅是包菜还是大白菜 包菜馅饺子好吃还是白菜馅饺子好吃 请问杭州汽车北站有去杭州萧山国际机场的大巴时刻表? 杭州北站到北京汽车,票价多少?具体发车时间是什么时候? 杭州北站是指杭州火车北站还是汽车北站,我买了一张杭州北站的长途汽车票,不知道在哪个站坐车! 现在在杭州北站买长途汽车票要身份证吗 杭州到庐江汽车票(杭州北站) 杭州到青岛汽车票多少钱啊 杭州汽车北站买票要身份证吗? 杭州汽车东站订票 杭州汽车北站在支付宝里怎么找?? 杭州汽车北站到萧山机场时刻表 海螺和海星吃什么 欧普oppo手机的微信剪贴板在哪里找 用手机控制大疆灵眸Osmo Pocket需要使用什么app? 大疆连接手机,手机显示内存不足 大疆mimo+app草稿箱恢复 djimimoapp长曝光设置 邀请一些人来一个地方开会,然后用短信的形式。 dji mimo app如何设置视频储存在在接卡里? 外出开会会报销食宿怎么发通知 dji mimo 安卓版怎么导入本地音乐 怎么更改Dji mimo的默认打开 DJIMimo为什么使用不了手机摄像头? JS应怎样学习? 怎么学习JS 才能达到自己写框架的水平? js学习方法 2016中国福利彩票第46期来开奖结果 “购买彩票后,每期开奖结果出来后,看一下你购买的方案,如果中奖,奖金自动派奖到你的支付宝账户。” 如何看待2021112期双色球结果,在未开奖时就被公布中奖信息? 汽车电动门改装多少钱? 大通V80右前门可以改为自动门吗?