sql

阅读 / 问答 / 标签

桌面自动出现sqlnet是怎么回事?删掉还在出现

蓝宝石

如何做好SQLServer的数据保护

由于多种原因,进行安全设置的人们常常不理解数据的真正价值,所以,他们也无法对数据进行合适的保护。将你的数据只限于需要的人访问,并保证访问的人的合法性,是一个数据库管理人员的重要工作。然而,确保数据可以访问不是意味着数据向所有人公开,相反的由于多种原因,进行安全设置的人们常常不理解数据的真正价值,所以,他们也无法对数据进行合适的保护。将你的数据只限于需要的人访问,并保证访问的人的合法性,是一个数据库管理人员的重要工作。然而,确保数据可以访问不是意味着数据向所有人公开,相反的,你必须很仔细地保护数据,并只对需要使用数据的人进行开放。设置安全性过程通用的软件维护和数据库更新都会对系统安全起着重要作用,通常包括以下步骤:1、分配一个可靠的密码给缺省的系统管理(SA)帐号。然后,建立自己唯一命名的帐号,并将这一帐号放入sysadmin。一定要确认新帐号也有一个可靠的密码。2、将独立的密码分配给每一个用户。更好的,使用Windows集成安全性,并让Windows遵循稳定密码规则。3、决定哪些用户需要查看数据,然后分配合适的许可。请不要随便赋予用户各种权限。例如不要把每一个人的工资随便让其他人访问。4、决定哪些用户需要更新数据,然后分配合适的许可。帐号管理人员应该可以查看所有用户的信息,,但程序员一定要限制更新这些信息的权限。特别的,只有负责特定帐号的管理者是唯一可以更改用户数据的人。通过这些系列信息你可以学会很多知识,但你应该从开始就具备这些观点。否则,数据库的任何用户就可以偷窃或删除你的重要数据。什么东西最容易发生错误?对于记录,应该知道SQL Server并非绝对安全的。你应该提出一些想法并努力有效地保护你的服务器。在安装服务器之前有两点你必须完成的:1、设置管理人员的帐号和密码。2、保护系统防止受到Slammer worm的感染。使一些特殊的东西安全化SQL Server 2000通过SA帐号而具有缺省的安全设置。在安装过程中,SQL Server自动建立一个管理的用户,并分配一个空白密码给SA用户名称。一些管理人员喜欢将SA密码设置为空白或者一个通用的密码以便每一个人都能知道。如果你犯这样的错误,进入你的数据库的任何人都可以为所欲为。具备管理者允许的任何人也可以做任何想做的事——不仅仅是数据库,而是整个计算机。所以,必须限制用户根据他们的需要进行访问数据库,不要给他们权利太少,也不能太多。暂且把每一天管理的SA帐号放在一边,让我们看看带有安全密码的帐号。建立另一帐号以便管理(或者是一个SQL Server帐号或者是一个Windows帐号,取决于你的认证模式)。你所要避免的是太容易地猜到帐号名称或者帐号密码,因为任何人得到这些帐号。一个引起警戒的坏事—Slammer worm(Slammer蠕虫)2003年1月份出现了一些非常致命的恶意代码,即为Slammer worm。这一代码专门针对于SQL Server的安装进行攻击。通过利用SQL Servera代码中的缺欠,蠕虫能够在SQL Server安装的时候复制本身程序而损坏整个机器和其他机器。蠕虫生成时以15秒可以充满网络。微软已经花了很大力量来阻止这一蠕虫,但是蠕虫还是无法完全消除。有些人开始抱怨SQL Server的测试版本的原因,因为是它在安装时导致了系统的损坏。很多月份已经过去了,有必要还要对蠕虫那么警惕吗?回答是肯定的。因为每一天还有很多Slammer的复制而感染机器。如果一个没有任何补丁的SQL Server连接到网络,你将会变成这一行为的牺牲品。从道德上而言,在将SQL Server与网络线连接之前,必须保护你的服务器,并运行所有的新服务补丁。服务补丁的重要性服务补丁在下载时是免费的。Slammer没有损坏你的数据,但它可以导致服务器的很多破坏,其危害是明显的。保护数据最简单的方法是下载Service Pack 3或者Service Pack 3a。蠕虫如何工作这一方面的知识并不是重要,重要的是蠕虫在微软的补丁发布以后还可以生存6个月。被蠕虫感染的商业系统通常有两个原因:一是管理人员没有很有效的保护好系统,二是蠕虫本身太厉害。你应该注意到,SQL Server SP3也是无法保证它能够保持全部的数据。你应该实时监控Microsoftu2018s Security Bulletin(微软安全公告)以保证处于被服务补丁通知的状态。选择一个认证模式在SQL Server安装过程中有一个必须决定的是选择安全认证模式。这里有两种模式:1、Windows认证模式(也叫集成模式)2、混合模式Windows认证模式用户通过使用一个现成的Windows用户帐号连接到SQL服务器。当用户使用一个合法用户名和密码连接到服务器时,SQL Server就确认用户的注册信息。结果是用户只是在Windows和SQL Server中注册,帐号信息被Windows严格的存储。混合模式是Windows认证和SQL Server认证的结合。在混合模式中,一些用户可以继续使用Windows帐号来访问SQL Server,但其他只能使用与Windows帐号完全不关联的SQL Server用户帐号。每一个SQL Server帐号都存放其用户名和密码。如果这些注册值相同,用户必须输入两次——一次是Windows输入,另一次是SQL Server输入。Windows认证比混合模式更优越,原因在以下:◆它比SQL Server认证提供更多的特性。◆很多管理人员都认为Windows认证比较容易执行和使用。◆使用Windows认证,不需要将密码存放在连接字符串中。◆Windows认证意味着你只需要将密码存放在一个地方。不幸的是,Windows认证并不是每一个人都能够使用的。混合模式必须在SQL Server 7.0中运行,而Windows认证只能在SQL Server2000中使用。还有其他的一些环境,Windows认证无法运行,因为无法获得垮平台的相互信任。在这种情况下,你只能使用混合模式和SQL Server注册。其他安装技巧在安装SQL Server时,还在其他一些技巧值得注意。使用TCP/IP作为SQL Server的网络库。这是微软推荐使用的库,是经受考验的。如果服务器将与网络连接,使用非标准端口会被一些别有用心的人破坏。使用一个低级别的帐号来运行SQL Server,而不是一个管理帐号。这对系统崩溃的时候起着保护作用。不要允许未获得安全许可的客人访问任何包括安全数据的数据库。将数据库保护于一个“被锁的房间”。记住,很多骚扰都是来自于内部的人。总结从开始就要对数据进行安全保护措施。为了防止有意或无意的破坏,你应该保护你的数据。学会建立安全模型,并运用它。让安全噩梦远离你,高枕无忧的工作。

如何做好SQL Server的数据保护

  由于多种原因 进行安全设置的人们常常不理解数据的真正价值 所以 他们也无法对数据进行合适的保护 将你的数据只限于需要的人访问 并保证访问的人的合法性 是一个数据库管理人员的重要工作 然而 确保数据可以访问不是意味着数据向所有人公开 相反的 你必须很仔细地保护数据 并只对需要使用数据的人进行开放   设置安全性过程   通用的软件维护和数据库更新都会对系统安全起着重要作用 通常包括以下步骤    分配一个可靠的密码给缺省的系统管理(SA)帐号 然后 建立自己唯一命名的帐号 并将这一帐号放入sysadmin 一定要确认新帐号也有一个可靠的密码    将独立的密码分配给每一个用户 更好的 使用Windows集成安全性 并让Windows遵循稳定密码规则    决定哪些用户需要查看数据 然后分配合适的许可 请不要随便赋予用户各种权限 例如不要把每一个人的工资随便让其他人访问    决定哪些用户需要更新数据 然后分配合适的许可 帐号管理人员应该可以查看所有用户的信息 但程序员一定要限制更新这些信息的权限 特别的 只有负责特定帐号的管理者是唯一可以更改用户数据的人   通过这些系列信息你可以学会很多知识 但你应该从开始就具备这些观点 否则 数据库的任何用户就可以偷窃或删除你的重要数据   什么东西最容易发生错误?   对于记录 应该知道SQL Server并非绝对安全的 你应该提出一些想法并努力有效地保护你的服务器 在安装服务器之前有两点你必须完成的    设置管理人员的帐号和密码    保护系统防止受到Slammer worm的感染   使一些特殊的东西安全化   SQL Server 通过SA帐号而具有缺省的安全设置 在安装过程中 SQL Server自动建立一个管理的用户 并分配一个空白密码给SA用户名称 一些管理人员喜欢将SA密码设置为空白或者一个通用的密码以便每一个人都能知道 如果你犯这样的错误 进入你的数据库的任何人都可以为所欲为 具备管理者允许的任何人也可以做任何想做的事——不仅仅是数据库 而是整个计算机 所以 必须限制用户根据他们的需要进行访问数据库 不要给他们权利太少 也不能太多   暂且把每一天管理的SA帐号放在一边 让我们看看带有安全密码的帐号 建立另一帐号以便管理(或者是一个SQL Server帐号或者是一个Windows帐号 取决于你的认证模式) 你所要避免的是太容易地猜到帐号名称或者帐号密码 因为任何人得到这些帐号   一个引起警戒的坏事—Slammer worm(Slammer蠕虫)    年 月份出现了一些非常致命的恶意代码 即为Slammer worm 这一代码专门针对于SQL Server的安装进行攻击 通过利用SQL Servera代码中的缺欠 蠕虫能够在SQL Server安装的时候复制本身程序而损坏整个机器和其他机器 蠕虫生成时以 秒可以充满网络 微软已经花了很大力量来阻止这一蠕虫 但是蠕虫还是无法完全消除 有些人开始抱怨SQL Server的测试版本的原因 因为是它在安装时导致了系统的损坏   很多月份已经过去了 有必要还要对蠕虫那么警惕吗?回答是肯定的 因为每一天还有很多Slammer的复制而感染机器 如果一个没有任何补丁的SQL Server连接到网络 你将会变成这一行为的牺牲品 从道德上而言 在将SQL Server与网络线连接之前 必须保护你的服务器 并运行所有的新服务补丁      服务补丁的重要性   服务补丁在下载时是免费的 Slammer没有损坏你的数据 但它可以导致服务器的很多破坏 其危害是明显的 保护数据最简单的方法是下载Service Pack 或者Service Pack a   蠕虫如何工作这一方面的知识并不是重要 重要的是蠕虫在微软的补丁发布以后还可以生存 个月 被蠕虫感染的商业系统通常有两个原因 一是管理人员没有很有效的保护好系统 二是蠕虫本身太厉害   你应该注意到 SQL Server SP 也是无法保证它能够保持全部的数据 你应该实时监控Microsoft‘s Security Bulletin(微软安全公告)以保证处于被服务补丁通知的状态   选择一个认证模式   在SQL Server安装过程中有一个必须决定的是选择安全认证模式 这里有两种模式    Windows认证模式(也叫集成模式)    混合模式   Windows认证模式用户通过使用一个现成的Windows用户帐号连接到SQL服务器 当用户使用一个合法用户名和密码连接到服务器时 SQL Server就确认用户的注册信息 结果是用户只是在Windows和SQL Server中注册 帐号信息被Windows严格的存储   混合模式是Windows认证和SQL Server认证的结合 在混合模式中 一些用户可以继续使用Windows帐号来访问SQL Server 但其他只能使用与Windows帐号完全不关联的SQL Server用户帐号 每一个SQL Server帐号都存放其用户名和密码 如果这些注册值相同 用户必须输入两次——一次是Windows输入 另一次是SQL Server输入   Windows认证比混合模式更优越 原因在以下   ◆它比SQL Server认证提供更多的特性   ◆很多管理人员都认为Windows认证比较容易执行和使用   ◆使用Windows认证 不需要将密码存放在连接字符串中   ◆Windows认证意味着你只需要将密码存放在一个地方   不幸的是 Windows认证并不是每一个人都能够使用的 混合模式必须在SQL Server 中运行 而Windows认证只能在SQL Server 中使用 还有其他的一些环境 Windows认证无法运行 因为无法获得垮平台的相互信任 在这种情况下 你只能使用混合模式和SQL Server注册   其他安装技巧   在安装SQL Server时 还在其他一些技巧值得注意   使用TCP/IP作为SQL Server的网络库 这是微软推荐使用的库 是经受考验的 如果服务器将与网络连接 使用非标准端口会被一些别有用心的人破坏   使用一个低级别的帐号来运行SQL Server 而不是一个管理帐号 这对系统崩溃的时候起著保护作用   不要允许未获得安全许可的客人访问任何包括安全数据的数据库   将数据库保护于一个“被锁的房间” 记住 很多骚扰都是来自于内部的人   总结   从开始就要对数据进行安全保护措施 为了防止有意或无意的破坏 你应该保护你的数据 学会建立安全模型 并运用它 让安全噩梦远离你 高枕无忧的工作 lishixinzhi/Article/program/SQLServer/201311/22330

桌面突然出现一个名为“sqlnet”的文本文档!!!

SQL Slammer也被称为“蓝宝石”(Sapphire),2003年1月25日首次出现。它是一个非同寻常的蠕虫病毒,给互联网的流量造成了显而易见的负面影响。有意思的是,它的目标并非终端计算机用户,而是服务器。它是一个单包的、长度为376字节的蠕虫病毒,它随机产生IP地址,并向这些IP地址发送自身。如果某个IP地址恰好是一台运行着未打补丁的微软SQL服务器桌面引擎(SQL Server Desktop Engine)软件的计算机,它也会迅速开始向随机IP地址的主机开火,发射病毒。正是运用这种效果显著的传播方式,SQL Slammer在十分钟之内感染了7.5万台计算机。庞大的数据流量令全球的路由器不堪重负,如此循环往复,更高的请求被发往更多的路由器,导致它们一个个被关闭。 http://zhidao.baidu.com/question/56674815.html

SQL Slammer 是什么病毒?

这种病毒腾讯安全提到过可以去下载安装一个腾讯御点打开之后,使用里面的病毒查杀功能,直接就可以查杀这种电脑病毒了

远程数据采集系统设计,数据传输到上位机。通过3G无线传输,传到监控中心后,怎么把数据存储SQL数据库中?

数据中心动态库说明1、数据类型typedefUINT u32t;typedefUCHAR u8t;typedefUSHORT u16t;typedefULONG u64t;2、数据结构1) 用以区分标识各台DTU的数据结构typedefstruct_modem_info_t_{u32t m_modemId; //Modem模块的ID号u8t m_phoneno[12]; //Modem的11位电话号码,必须以""字符结尾u8t m_dynip[4]; //Modem的4位动态ip地址u64t m_conn_time; //Modem模块最后一次建立TCP连接的时间u64t m_refresh_time; //Modem模块最后一次收发数据的时间}ModemInfoStruct;2) DTU数据包的数据结构#defineMAX_RECEIVE_BUF1450typedefstruct_modem_data_t{u32t m_modemId; //Modem模块的ID号u64t m_recv_time; //接收到数据包的时间u8t m_data_buf[MAX_RECEIVE_BUF+1]; //存储接收到的数据u16t m_data_len; //接收到的数据包长度u8t m_data_type; //接收到的数据包类型,// 0x01:用户数据包// 0x02:对控制命令帧的回应}ModemDataStruct;以上u64t类型的时间是基于GMT时间1970年1月1日0:00:000以来的秒数指示时间值,即当前时间距1970年1月1日0点0分0秒以秒为单位的数值。在大多数语言都提供转换函数。3、API函数说明1) BOOLDSStartService(u16tuiListenPort);功能:启动服务器的数据服务参数:u16ListenPort:服务的侦听端口返回:成功返回TRUE,失败返回FALSE;说明:启动服务器的数据服务。启动数据服务后,服务器侦听在指定端口。如果失败了,可以调用DSGetLastError()函数查看错误原因。2) BOOLDSStopService(void);功能:停止服务器的数据服务参数:无返回:成功返回TRUE,失败返回FALSE;说明:停止服务器的数据服务。所有的DTU都将下线。如果失败了,可以调用DSGetLastError()函数查看错误原因。3) BOOLDSGetNextData(ModemDataStruct*pDataStruct,u16twaitseconds);功能:读取下一条DTU送上来的信息参数:pDataStruct:存放DTU所送上来的信息和数据的结构,读函数执行成功后,返回的数据存放到该参数指向的结构中waitseconds:本函数读到数据后立即返回;如果没有数据到达,则等待最长waitseconds(时间单位:秒)的时间,直到有数据到达,取值范围从0~65535,如果取值为0表明本函数将立即返回。另外,当在另一个线程中执行成功了DSStopService()后,本函数将立即返回。返回:成功返回TRUE,失败返回FALSE;说明:如果失败了,可以调用DSGetLastError()函数查看错误原因。4) BOOLDSSendData(u32tmodemId,u16tlen,u8t*buf);功能:向指定ID号的的DTU发送数据参数:modemId:DTU的ID号,用以标识一个DTUlen:待发送的数据长度(字节数),数据长度必须小于或等于1450个字节buf:待发送的数据返回:成功返回TRUE,失败返回FALSE;说明:如果失败了,可以调用DSGetLastError()函数查看错误原因。5) BOOLDSSendControl(u32tmodemId,u16tlen,u8t*buf);功能:向指定ID号的的DTU发送控制命令参数:modemId:DTU的ID号,用以标识一个DTUlen:待发送的控制命令长度(字节数),数据长度必须小于或等于1000个字节buf:待发送的控制命令帧返回:成功返回TRUE,失败返回FALSE说明:如果失败了,可以调用DSGetLastError()函数查看错误原因。]6) u32tDSGetModemCount(void);功能:取得当前在线的所有的DTU的总数参数:无返回:得到在线的DTU的数量7) BOOLDSGetModemByPosition(u32tpos,ModemInfoStruct*pModemInfo);功能:取得指定位置的DTU的数据;参数:pos:DTU列表中的位置信息,0代表第一个DTU位置;pModemInfo:指向用以保存DTU信息的数据结构;返回:成功返回TRUE,失败返回FALSE说明:如果失败了,可以调用DSGetLastError()函数查看错误原因。一般来说DSGetDtuCount()和DSGetDtuByPosition()函数配合使用,用以查看当前所有DTU的信息,如下例所示:u32t uiDtuCount;uiDtuCount=DSGetDtuCount();DtuInfoStruct dtuInfo;u32t i;for(i=0;i<uiDtuCount;i++){DSGetDtuByPosition(i,&dtuInfo);//对dtuInfo进行操作}8) voidDSGetLastError(char*str,intnMaxBufSize);功能:获得先前API执行时发生的错误;参数:str:用来存放错误信息的缓冲区;nMaxStrSize:缓冲区的最大长度,如果错误信息的大小超过了这个值,则此函数将把错误信息的尾部截除。返回:无9) BOOLDSDisconnect(u32tmodemId);功能:断开指定ID号的DTU连接参数:modemId:DTU的ID号,用以标识一个DTU返回:成功返回TRUE,失败返回FALSE说明:如果失败了,可以调用DSGetLastError()函数查看错误原因。4、函数的具体使用3) 导入动态库调用WINDOWSAPI函数LoadLibrary装载动态库,如下:HMODULE DllMudule; //指向动态库的句柄BOOL(*DSStartService)(u16t); //定义一个指向函数的地址的指针hDllModule=LoadLibrary(“gprsdll.dll”);If(hDllModule!=NULL) //判断调用是否成功{//从动态库中取函数地址DSStartService=GetProcAddress(hDllModule,”DSStartService”);if(DSStartService!=NULL) //判断是否取到该函数地址{if((*DSStartService)(5001)!=FALSE)MessageBox(“启动成功”);ElseMessageBox(“启动失败”);}}在程序开始时需要调用动态库,程序运行完毕后,要释放动态库,调用windowsAPI函数FreeLibrary可释放动态库:FreeLibrary(hDllModule);//TRUE-successFALSE-failed程序中LoadLibrary次数必须和FreeLibrary相同,每调用一次LoadLibrary,相应的应该调用一次FreeLibrary,保证每次调用后都会释放。4) 启动服务首先从动态库中取到该函数地址,取到地址后,就可以执行该函数,如下:BOOL(*DSStartService)(u16t); //定义一个指向函数的地址的指针DSStartService=(BOOL(*)(u16t))GetProcAddress(hDllModule,“DSStartService”);if(DSStartService!=NULL){(*DSStartService)(5001);}5) 停止服务BOOL(*DSStopService)(void);DSStopService=(BOOL(*)(void))GetProcAddress(hDllModule,“DSStopService”);If(DSStopService!=NULL)(*DSStopService)();6) 读数据BOOLDSGetNextData(ModemDataStruct*,u16t);DSGetNextData=(BOOL(*)(ModemDataStruct*,u16t))GetProcAddress(hDllModule,“DSGetNextData”);if(DSGetNextData!=Null)if((*DSGetNextData)(&dtudata,100)==0) //dtudata为DtuDataStruct型结构//如果没有数据最长等待100秒{//处理结构dtudata中的数据}7) 发送数据BOOLDSSendData(u32t,u16t,u8t*);DSSendData=(BOOL(*)(u32t,u16t,u8t*))GetProcAddress(hDllModule,“DSSendData”);if(DSSendData!=NULL){(*DSSendData)(nID,len,buf);}8) 用户列表底层服务维护一张用户列表,记录当前在线用户的信息,DSC如果想知道底层用户列表,需要调用提供的API函数:DSGetModemCount、DSGetModemByPositionfor(u32ti=0;i<(*DSGetModemCount)();i++){(*DSGetModemByPosition)(i,&dtuinfo);//1、处理记录用户信息记录dtuinfo中的信息;}9) 错误信息可以通过调用DSGetLastError()函数来获得上次调用API函数失败后的具体的错误信息。charszErrorMsg[256];DSGetLastError(szErrorMsg,255);这个是厦门才茂DTU动态库文件,如果需要咨询更详细,可以直接联系厦门才茂技术,或者直接到他们网站咨询传感器采集到相关的数据信息(主要是对环境数据的采集,包括了湘江水质PH,浊度等空气的湿度,灰尘等信号),传送给主控芯片S3C2440AL通过AT指令控制3G模块,发送数据到3G网络,通过网关后数据传送到INTERNET上,然后数据中心接收到数据后处理并存储起来。问题:数据传输过来后,怎么做可以把数据存储到SQL2005数据库中去。我上位机是采用B/S结构,VS2010,C#做一个上位机。对数据进行报表显示,趋势图分析。另外就是3G模块与我中控室怎么进行连接通讯,是否是通过什么桥梁中控室这边要接收数据,保存。是要编个什么程序还是怎么处理的希望高手为我解答疑问啊,越详细越好。谢谢,急需!

sql 问题

可真多呀,累得慌

自己编译的mysql,登录报错Segmentation fault

自己编译的mysql 5.7.33,使用mysql -h 127.0.0.1 -p登录,输完密码就会报一个Segmentation fault (core dumped)。另外一头的mysqld也不会报错,只是多出一行空的[Note]提示 查了一下,说是mysql libedit的问题,需要改源码。5.7.33需要修改的文件为 cmd-line-utils/libedit/libedit-20190324-3.1/src/terminal.c 然后再make,make install取出mysql进程即可解决报错问题

SQL数据库多表连接查询为什么数据会重复

重复值的原因一般就是连接的过程中连接条件出问题或者where语句有问题,所以最好检查一下,并且建议你从简单的表开始关联,不要一次性关联太多表,会使逻辑复杂没有任何连接条件的from子句,相当于笛卡尔积,即两个表行数的乘积。stock有n行,materia有m行,结果就为n*m行,但是如果你stock表和materia表本身无重复数据,连接出来的也没有重复数据,只是对于stock来说,关于materia的部分会重复m次

急!!!!!!!!问题解决了可另加分!为什么说shp2pgsql不是内部或外部命令,也不是可运行的程序或批处

请问你的问题解决了么?

求一条插入并返回的SQL语句

insert ... returning ...具体语法请参考帮助:insert into Dumbbells (firstname, lastname, iq) select fname, lname, iq from Friends order by iq rows 1 returning id, firstname, iq into :id, :fname, :iq;

三个表的循环查询太慢,怎样快点写sql语句会快点?

这种方法慢在每次循环都要重新建立连接,执行新的查询。不但因为建立连接费时,而且不利于查询优化器对查询进行优化。可以将两个查询合并成一个,如下(代码没有经过调试,可能需要做小改动):select a.chanelID,count(e.re_price) as aa from(select p.chaneldId, c.Msisdn from price as p inner join chanel as c on p.chanelID = c.chanelID) as ainner join error as e on a.Msisdn = e.Msisdn where [message] = "0" and [year] = cast(year(getdate()) as vchar(4)) and [month] = cast(month(getdate()) as varchar(2))group by a.chanelID遍历返回结果集就行了,这样会快很多。循环越多,该语句相对的性能效益越明显。

ACCESS中有2个表,想找出2个表不一样的数据,SQL查询怎么写?

用vlookup函数很快就能找出来。

sql语句优化

to_char(a.alloc_date,"yyyymm")>="200805"这个日期类型干嘛还要转化,直接比较不就行了

如何在SQL服务器上重置SA密码 4种方法来在SQL服务器上重置SA密码

目录方法1:方法1:从命令提示符中更改SA密码1、打开命令提示符,前往SQL服务器,输入命令osql _L。2、复制SQL服务器全名,输入:OSQL -S <这里输入服务器的名称> -E。3、执行以下4、完成重置。方法2:方法2:使用SSMS重置SA密码1、打开SSMS管理器。2、用windows身份验证连接SQL服务器。3、打开后,在左侧的对象资源管理器中展开"安全性",在登录名下找到"sa"用户。4、在"密码"和"确认密码"栏前方输入新密码,点击确定。方法3:方法3:使用SQL密码恢复工具重置SA密码1、运行SQL密码恢复程序,然后点击"打开"来导入master.mdf文件。2、选择SA用户名来重置忘记的SA密码,或选择其它忘记密码的用户名。3、输入新密码,点击"确定"。方法4:方法4:当SA已被禁用时1、这是一种额外的复杂方案。2、使用命令行的-m标签命令,以单个用户身份打开SQL服务器。3、以管理员身份运行。4、在服务器身份页面,选择系统管理员,然后重置密码。SA用户(“系统管理员”的简称)是MS SQL服务器的管理者账户。如果忘记服务器管理员账户的密码该怎么办呢?难道要重新安装SQL服务器或放弃所有数据内容吗?不管出于何种原因,如果你忘记了服务器的管理账户密码,并且被告知你无权进行更改,这篇文章将教给你几种重置SQL服务器SA密码的方法。方法1:方法1:从命令提示符中更改SA密码1、打开命令提示符,前往SQL服务器,输入命令osql _L。2、复制SQL服务器全名,输入:OSQL -S <这里输入服务器的名称> -E。3、执行以下命令:sp_password NULL, ‘<这里插入新密码>", "sa"4、完成重置。方法2:方法2:使用SSMS重置SA密码1、打开SSMS管理器。它通常位于开始菜单 -> 所有程序 -> "Microsoft SQL Server 2005" -> 找到"SQL Server Management Studio"程序。2、用windows身份验证连接SQL服务器。3、打开后,在左侧的对象资源管理器中展开"安全性",在登录名下找到"sa"用户。右键点击它,选择属性。4、在"密码"和"确认密码"栏前方输入新密码,点击确定。方法3:方法3:使用SQL密码恢复工具重置SA密码1、运行SQL密码恢复程序,然后点击"打开"来导入master.mdf文件。2、选择SA用户名来重置忘记的SA密码,或选择其它忘记密码的用户名。点击"更改密码"来重置密码。3、输入新密码,点击"确定"。方法4:方法4:当SA已被禁用时1、这是一种额外的复杂方案。有时候你会遇到SA被禁用的情况。2、使用命令行的-m标签命令,以单个用户身份打开SQL服务器。3、以管理员身份运行。4、在服务器身份页面,选择系统管理员,然后重置密码。小提示 重置SA密码最简单有效的方法是使用SQL密码恢复工具。你可以使用几种SQL密码恢复工具来成功重置SQL的SA密码。如,“SQL Password Geeker”程序、“SQL Password Rescuer”程序。

使用C#读取SQL数据库中的图片

//--用自己的初始连接初始一个SQL连接实体My.Data.SQLDataContextdbc=newMy.Data.SQLDataContext("DataSource=.;InitialCatalog=TEXT;uid=sa;pwd=8888;");DataSetds=null;stringcommads="SELECT[name],[photo]FROM[TABE1]";ds=dbc.GetDataSet(commads);if(ds!=null&&ds.Tables.Count>0&&ds.Tables[0].Rows.Count>0){for(inti=0;i<ds.Tables[0].Rows.Count;i++){try{//--判断字段数据是否有数据且有照片流数据if(((Byte[])ds.Tables[0].Rows[i]["photo"]).Length>0&&((Byte[])ds.Tables[0].Rows[i]["photo"]).Max()>0){byte[]aa=(Byte[])ds.Tables[0].Rows[i]["photo"];Bitmapbit=newBitmap(newSystem.IO.MemoryStream((Byte[])ds.Tables[0].Rows[i]["photo"]));//--保存照片pictureBox1.Image=bit;}}catch(Exceptionex){MessageBox.Show(ex.ToString());}ds.Clear();ds.Dispose();}}试试

如何设置mysql数据库为utf-8编码

UTF-8是UTF-8编码是一种目前广泛应用于网页的编码,它其实是一种Unicode编码,即致力于把全球所有语言纳入一个统一的编码。前UTF-8已经把几种重要的亚洲语言纳入,包括简繁中文和日韩文字。所以在制作某些网站时,需要使用UTF-8,找到菜单的修改——页面属性——标题和编码,在编码列表中选择UTF-8后确定即可。

MYSQL数据库使用UTF-8中文编码乱码的解决办法

1.用phpmyadmin创建数据库和数据表创建数据库的时候,请将“整理”设置为:“utf8_general_ci”或执行语句:复制代码代码如下:CREATEDATABASE`dbname`DEFAULTCHARACTERSETutf8COLLATEutf8_general_ci; 创建数据表的时候:如果是该字段是存放中文的话,则需要将“整理”设置为:“utf8_general_ci”,如果该字段是存放英文或数字的话,默认就可以了。相应的SQL语句,例如:CREATETABLE`test`(`id`INTNOTNULL,`name`VARCHAR(10)CHARACTERSETutf8COLLATEutf8_general_ciNOTNULL,PRIMARYKEY(`id`))ENGINE=MYISAM;2.用PHP读写数据库在连接数据库之后:复制代码代码如下:$connection=mysql_connect($host_name,$host_user,$host_pass); 加入两行:mysql_query("setcharacterset"utf8"");//读库mysql_query("setnames"utf8"");//写库就可以正常的读写MYSQL数据库了。用的appserv-win32-2.5.10做的环境,装这个包的时候用默认的utf8编码。在写数据库连接文件时,写成:$conn=mysql_connect("$host","$user","$password");mysql_query("SETNAMES"UTF8"");mysql_select_db("$database",$conn);然后在做页面时,注意这句:复制代码代码如下:<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/> 这样不管输入数据库的中文,还是页面显示,就都正常了。在DWCS4版里,默认生成的也是utf8页面。同样的,如果一开始写数据库连接文件时写成:mysql_query("SETNAMES"GBK"");那页面也要相应变成:复制代码代码如下:<metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/> 总结,最后主要是页面编码要统一就可以很方便的解决乱码问题,特别是在mysql_query()这个setnames的设置必须和页面及数据库编码统计一就可以了。希望这两篇关于UTF-8中文编码乱码的文章,能够更好地帮助大家解决这类问题,希望大家喜欢。

全面了解mysql中utf8和utf8mb4的区别

整理 MySQL 8.0 文档时发现一个变更:默认字符集由 latin1 变为 utf8mb4。想起以前整理过字符集转换文档,升级到 MySQL 8.0 后大概率会有字符集转换的需求,在此正好分享一下。当时的需求背景是:部分系统使用的字符集是 utf8,但 utf8 最多只能存 3 字节长度的字符,不能存放 4 字节的生僻字或者表情符号,因此打算迁移到 utf8mb4。迁移方案一1. 准备新的数据库实例,修改以下参数:[mysqld]## Character Settingsinit_connect="SET NAMES utf8mb4"#连接建立时执行设置的语句,对super权限用户无效character-set-server = utf8mb4collation-server = utf8mb4_general_ci#设置服务端校验规则,如果字符串需要区分大小写,设置为utf8mb4_binskip-character-set-client-handshake#忽略应用连接自己设置的字符编码,保持与全局设置一致## Innodb Settingsinnodb_file_format = Barracudainnodb_file_format_max = Barracudainnodb_file_per_table = 1innodb_large_prefix = ON#允许索引的最大字节数为3072(不开启则最大为767字节,对于类似varchar(255)字段的索引会有问题,因为255*4大于767)2. 停止应用,观察,确认不再有数据写入可通过 show master status 观察 GTID 或者 binlog position,没有变化则没有写入。3. 导出数据先导出表结构:mysqldump -u -p --no-data --default-character-set=utf8mb4 --single-transaction --set-gtid-purged=OFF --databases testdb > /backup/testdb.sql后导出数据:mysqldump -u -p --no-create-info --master-data=2 --flush-logs --routines --events --triggers --default-character-set=utf8mb4 --single-transaction --set-gtid-purged=OFF --database testdb > /backup/testdata.sql4. 修改建表语句修改导出的表结构文件,将表、列定义中的 utf8 改为 utf8mb45. 导入数据先导入表结构:mysql -u -p testdb < /backup/testdb.sql后导入数据:mysql -u -p testdb < /backup/testdata.sql6. 建用户查出旧环境的数据库用户,在新数据库中创建7. 修改新数据库端口,启动应用进行测试关闭旧数据库,修改新数据库端口重启,启动应用

mysql如何设置默认编码为utf-8

具体方法:(推荐教程:mysql教程)首先打开my.ini配置文件;然后在mysqld模块下面新增以下内容:character_set_server=utf8(学习视频推荐:mysql视频教程)最后保存配置并重启MySQL服务即可。

mysql怎么设置成utf-8编码

你要是用一个可视化操作的界面就简单了,就比如navicat for mysql右键数据库-->数据库属性--->字符集--->utf-8 unicode /排序规则--->utf8-gernal-ci就行了

mysql设置编码utf8

使用语句如下语句检查当前编码是什么:show variables like ‘%character%";show variables like"%collation%";如果不是以上情况,需要将mysql编码设置为utf-8。具体步骤如下:如果安装mysql是安装了“MySql Sever Instance Configuration Wizard”,则只需要启动该程序进行相应设置即可。1、 编辑MySql的配置文件MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一般是 /etc/my.cnf--在 [mysqld] 标签下加上以下内容:default-character-set = utf8character_set_server = utf8注意:如果此标签下已经存在“default-character-set=GBK”类似的内容,只需修改即可。--在 [mysql] 标签下加上一行default-character-set = utf8--在 [mysql.server]标签下加上一行default-character-set = utf8--在 [mysqld_safe]标签下加上一行default-character-set = utf8--在 [client]标签下加上一行default-character-set = utf82、 重新启动MySql服务Windows可在服务管理器中操作,也可使用命令行:net stop mysql 回车net start mysql 回车服务名可能不一定为mysql,请按自己的设置Linux下面可是用 service mysql restart如果出现启动失败,请检查配置文件有没有设置错误3、 查看设置结果登录MySql命令行客户端:打开命令行mysql –uroot –p 回车输入密码进入mysql后 执行 :show variables like "% character %";另外:建立数据库时可以使用以下命令:create database app_relation character set utf8;use app_relation;source app_relation.sql;修改数据库编码的命令为:alter database app_relation character set utf8;

如何设置mysql数据库为utf-8编码

方法一:mysql> show variables like "%chara%";+--------------------------+--------------------------+| Variable_name | Value |+--------------------------+--------------------------+| character_set_client | gbk || character_set_connection | gbk || character_set_database | latin1 || character_set_filesystem | binary || character_set_results | gbk || character_set_server | latin1 || character_set_system | utf8 || character_sets_dir | d:mysqlsharecharsets |+--------------------------+--------------------------+8 rows in set (0.00 sec)mysql> set character_set_client=utf8 -> ;Query OK, 0 rows affected (0.00 sec)mysql> set character_set_client=gbk;Query OK, 0 rows affected (0.00 sec)mysql>方法二:在my.ini或者my.cnf中改

怎么设置mysql编码为utf-8

UTF-8是UTF-8编码是一种目前广泛应用于网页的编码,它其实是一种Unicode编码,即致力于把全球所有语言纳入一个统一的编码。前UTF-8已经把几种重要的亚洲语言纳入,包括简繁中文和日韩文字。所以在制作某些网站时,需要使用UTF-8,找到菜单的修改——页面属性——标题和编码,在编码列表中选择UTF-8后确定即可。

sql查询中item什么意思

是SQL Server 2000 吧?Itemtype:项目类型ItemValue:项目值Itemname:项目名称

各位大侠,小弟刚接触SQL,写了个存储过程,但执行时没有数据显示,语句如下: 感谢了,小弟在线等,(SQL 2008)

貌似条件都没有达到,你可以在最后加个ELSE 语句,输出点什么,看看是不是这样。

哪些因素会对mysql数据库服务器性能造成影响

简述提高mysql数据库服务器性能的措施有哪些1,存储引擎,根据应用选择合适的引擎2,索引----这个就有很多文章了,具体需要你自己去了解3,sql语句优化,查询条件的选择之类4,mysql自身系统配置,需要针对应用去定制5,表的选择,临时表,或者分区表,也需要针对应用的情况去选择使用

postgresql无法正常启动的原因追查

仔细分析,无非几个原因: 1、log目录的权限问题,比如log文件指定的目录postgres用户无权写入,因此没有产生任何log文件。检查了/var/lib/postgresql/11/main的目录,没有发现问题。 2、配置文件的权限问题,检查了/etc/postgresql/11/main目录,也没有发现任何问题,postgres用户是有权限读取配置文件的。 3、配置文件有错误导致无法正常启动postgresql。排除了上面的两个原因,这个应该是最大的原因了。但是,错误在哪里呢?没有给出提示啊! u2003尝试了service postgresql start, pg_ctrcluster, pg_ctl均无法给出任何提示,后来才想明白,这几个都是对postmaster的脚本封装啊,也许这些封装忽略了什么重要的信息!应该直接运行postmaster才能得到直接的出错提示的!果然,执行/usr/lib/postgresql/11/bin/下的postmaster给出了提示,执行语句: u2003看到这里立刻明白了:我将postgresql.conf中的lc_messages改为了 en_US.UTF-8,可是没有产生en_US.UTF-8的locale文件啊!于是修改/etc/locales.gen文件添加en_US.UTF-8,执行locales.gen,再次启动postgresql,成功!

求助,postgresql服务启动不了

postmaster.pid是postgresql服务自动产生的,记录服务进程号的,不要人为去改动它。服务停止时,会自动删除。如果有遗留下,那就手工删除掉在启动前,这个文件是不应该存在的,如果这个文件不存在,服务还是无法启动,那就不是postmaster.pid的问题。是否还有其他错误信息?

PostgreSQL服务器启动及关闭方法

PostgreSQL服务器启动及关闭方法   PostgreSQL采用C/S(客户机/服务器)模式结构。应用层通过INET或者Unix Socket利用既定的协议与数据库服务器进行通信。下面我为大家搜集相关的PostgreSQL服务器启动及关闭方法!   1. 启动数据库服务器(posgres用户):   [postgres@localhost bin]$ postgres -D /opt/postgresql/data/ > /opt/postgresql/log/pg_server.log 2>&1 &   [1] 4508   当然如果设置了环境变量   PGDATA=/opt/postgresql/data   export PGDATA   后,可使用pg_ctl工具进行启动:   [postgres@localhost log]$ pg_ctl start -l /opt/postgresql/log/pg_server.log   pg_ctl: another server might be running; trying to start server anyway   pg_ctl: could not start server   Examine the log output.   [postgres@localhost log]$   因为之前已经启动,所以打印“another server might be running”。此时,查看日志,有如下信息:   [postgres@localhost log]$ cat pg_server.log   FATAL: lock file "postmaster.pid" already exists   HINT: Is another postmaster (PID 4491) running in data directory "/opt/postgresql/data"?   [postgres@localhost log]$   当然,最简的.启动方式是:   [postgres@localhost ~]$ pg_ctl start   server starting   [postgres@localhost ~]$ LOG: database system was shut down at 2011-07-09 13:58:00 CST   LOG: autovacuum launcher started   LOG: database system is ready to accept connections   如果要在操作系统启动时就启动PG,可以在/etc/rc.d/rc.local 文件中加以下语句:   /opt/postgresql/bin/pg_ctl start -l /opt/postgresql/log/pg_server.log -D /opt/postgresql/data   2.关闭服务器   最简单方法:   [postgres@localhost ~]$ pg_ctl stop   waiting for server to shut down.... done   server stopped   与Oracle相同,在关闭时也可采用不同的模式,简介如下:   SIGTERM   不再允许新的连接,但是允许所有活跃的会话正常完成他们的工作,只有在所有会话都结束任务后才关闭。这是智能关闭。   SIGINT   不再允许新的连接,向所有活跃服务器发送 SIGTERM(让它们立刻退出),然后等待所有子进程退出并关闭数据库。这是快速关闭。   SIGQUIT   令 postgres 向所有子进程发送 SIGQUIT 并且立即退出(所有子进程也会立即退出),而不会妥善地关闭数据库系统。这是立即关闭。这样做会导致下次启动时的恢复(通过重放 WAL 日志)。我们推荐只在紧急的时候使用这个方法。   SIGKILL   此选项尽量不要使用,这样会阻止服务器清理共享内存和信号灯资源,那样的话你只能在启动服务器之前自己手工做这件事。另外,SIGKILL 直接把 postgres 杀掉,而不会等它把信号中继给它的子进程,因此我们还需要手工杀掉每个独立子进程。   使用方法举例:   [postgres@localhost ~]$ pg_ctl stop -o SIGTERM   LOG: received smart shutdown request   LOG: autovacuum launcher shutting down   waiting for server to shut down....LOG: shutting down   LOG: database system is shut down   done   server stopped   [postgres@localhost ~]$   最快速关闭方法:kill postgres 进程   [postgres@localhost ~]$ kill -INT `head -1 /opt/postgresql/data/postmaster.pid`   [postgres@localhost ~]$ LOG: received fast shutdown request   LOG: aborting any active transactions   LOG: autovacuum launcher shutting down   LOG: shutting down   LOG: database system is shut down   附:postgre启动后的进程,如下:   [postgres@localhost ~]$ ps -ef|grep post   root 4609 4543 0 13:57 pts/2 00:00:00 su - postgres   postgres 4610 4609 0 13:57 pts/2 00:00:00 -bash   postgres 4724 1 0 14:08 pts/2 00:00:00 /opt/postgresql/bin/postgres   postgres 4726 4724 0 14:08 ? 00:00:00 postgres: writer process   postgres 4727 4724 0 14:08 ? 00:00:00 postgres: wal writer process   postgres 4728 4724 0 14:08 ? 00:00:00 postgres: autovacuum launcher process   postgres 4729 4724 0 14:08 ? 00:00:00 postgres: stats collector process   postgres 4752 4610 0 14:11 pts/2 00:00:00 ps -ef   postgres 4753 4610 0 14:11 pts/2 00:00:00 grep post   [postgres@localhost ~]$ ;

centos 7.4 MariaDB python3.6 安装mysqlclient 报错 ld: cannot find -lmariadb 怎么修复?

yum install mariadb-libsyum install MariaDB-shared执行这个可以解决 ld: cannot find -lmariadb。

mysql 5.0 reference manual什么意思

mysql 5.0 reference manualMySQL 5参考手册双语对照例句:1.The confusion lies in the fact that the new disorder, called internet use disorder, will apparently appear in the equivalent of an appendix in the new reference manual on mental disorders. 混乱来源于一个事实,即被称为互联网使用障碍的新障碍将出现在精神障碍新参考手册的性质上等同于附录的地方。

使用foreach批量插入数据时报“SQL 命令未正确结束”

values后边的括号里的值要有单引号("");语句最后结束时要有‘;"。

SQLMDF是什么

  是MASTER数据库的数据库文件。   MDF是primary data file的缩写,MASTER数据库是存储所有SQLSERVER服务器中信息的核心数据库。   数据库是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式,数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。

sql server 中后缀为.mdf的文件是干什么用的??

数据文件(扩展名.mdf是 primary data file 的缩写)。包含数据库的启动信息,并指向数据库中的其他文件。用户数据和对象可存储在此文件中,也可以存储在次要数据文件中。操作方法如下:1、首先点击“开始”,“程序”,打开SQL sever management studio。2、点击“连接”连接到服务器。3、在对象资源管理器中找到“数据库”,右键单击,选择“附加”。4、找到mdf文件所在的地方,选中,点击“确定”。5、附加数据库中出现选中的mdf文件数据库,点击“确定”,就可以了。

数据库物理文件mdf在sqlservice中打开是什么样子

数据文件(扩展名.mdf是 primary data file 的缩写)。包含数据库的启动信息,并指向数据库中的其他文件。用户数据和对象可存储在此文件中,也可以存储在次要数据文件中。操作方法如下:1、首先点击“开始”,“程序”,打开SQL sever management studio。2、点击“连接”连接到服务器。3、在对象资源管理器中找到“数据库”,右键单击,选择“附加”。4、找到mdf文件所在的地方,选中,点击“确定”。5、附加数据库中出现选中的mdf文件数据库,点击“确定”,就可以了。

SQL Server 2008 R2如何使用正则表达式搜索

select REGEXP_LIKE(a,"([大]|[小]|[中])") from A

这个mysql数据库语言怎么用代码写出来?

不知道表和字段名,我就随意了啊:use db_shop;update 表set 工号 = "32"where 姓名 = "张红";delete 员工表 where 姓名 = "尼古拉斯·赵四"

这道mysql数据库怎么用SQL建立表?

图片的顺序有点问题,应该是复制职员表那题在前面1、假设db_shop库中有一张名叫staffer的职员表,那么复制表包括记录的sql就是 create table db_shop.staffer_bak2 select * from db_shop.staffer;2、查看staffer_bak2 表结构的sql是 desc db_shop.staffer_bak2;3、给staffer_bak2 表添加字段,这题因为我不知道原本的职员表有哪些字段,我只能举例,可以添加例如 姓名,年龄,婚否,薪水,部门,职位,学历,邮箱,手机号,住址等等字段,假设原表没有职位这个字段,咱们来添加这个字段 alter table db_shop.staffer_bak2 add column job varchar(30) comment "职位";4、添加主键外键这可以根据原本的职员表哪些字段是主键和外键,咱们就设置哪些为主外键,因为你没有列出我只能猜测原表id是主键,那么设置主键sql就是alter table db_shop.staffer_bak2 add primary key(id);假设原职员表有department_id(部门id)且与department部门表的id字段有外键约束,那么设置外键sql就是alter table db_shop.staffer_bak2 add constraint `fk1` foreign key (`department_id`) references db_shop.department(`id`);5、删除外键约束alter table db_shop.staffer_bak2 drop foreign key `fk1`;6、删除之前添加的职位字段 alter table db_shop.staffer_bak2 drop job

win7怎么安装mysql zip包

下载xampp 套件,什么都有,mysql各个版本可以更换

为什么MYSQL很少人用视图,MYSQL的视图和MSSQL的视图有什么本质区别。

MySQL 8.0 推出了histogram,也叫柱状图或者直方图。先来解释下什么叫直方图。关于直方图我们知道,在DB中,优化器负责将SQL转换为很多个不同的执行计划,完了从中选择一个最优的来实际执行。但是有时候优化器选择的最终计划有可能随着DB环境的变化不是最优的,这就导致了查询性能不是很好。比如,优化器无法准确的知道每张表的实际行数以及参与过滤条件的列有多少个不同的值。那其实有时候有人就说了,索引不是可以解决这个问题吗?是的,不同类型的索引可以解决这个问题,但是你不能每个列都建索引吧?如果一张表有1000个字段,那全字段索引将会拖死对这张表的写入。而此时,直方图就是相对来说,开销较小的方法。直方图就是在 MySQL 中为某张表的某些字段提供了一种数值分布的统计信息。比如字段NULL的个数,每个不同值出现的百分比、最大值、最小值等等。如果我们用过了 MySQL 的分析型引擎brighthouse,那对这个概念太熟悉了。MySQL的直方图有两种,等宽直方图和等高直方图。等宽直方图每个桶(bucket)保存一个值以及这个值累积频率;等高直方图每个桶需要保存不同值的个数,上下限以及累计频率等。MySQL会自动分配用哪种类型的直方图,我们无需参与。MySQL 定义了一张meta表column_statistics 来存储直方图的定义,每行记录对应一个字段的直方图,以json保存。同时,新增了一个参数histogram_generation_max_mem_size来配置建立直方图内存大小。不过直方图有以下限制:1. 不支持几何类型以及json。2. 不支持加密表和临时表。3. 不支持列值完全唯一。4. 需要手工的进行键值分布。那我们来举个简单的例子说明直方图对查询的效果提升。举例表相关定义以及行数信息等:mysql> show create table t2G*************************** 1. row ***************************Table: t2Create Table: CREATE TABLE `t2` (`id` int(11) NOT NULL AUTO_INCREMENT,`rank1` int(11) DEFAULT NULL,`rank2` int(11) DEFAULT NULL,`rank3` int(11) DEFAULT NULL,`log_date` date DEFAULT NULL,PRIMARY KEY (`id`),KEY `idx_rank1` (`rank1`),KEY `idx_log_date` (`log_date`)) ENGINE=InnoDB AUTO_INCREMENT=49140 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci STATS_PERSISTENT=1 STATS_AUTO_RECALC=01 row in set (0.00 sec)mysql> select count(*) from t2;+----------+| count(*) |+----------+| 30940 |+----------+1 row in set (0.00 sec)同时对t2克隆了一张表t3mysql> create table t3 like t2;Query OK, 0 rows affected (0.13 sec)mysql> insert into t3 select * from t2;Query OK, 30940 rows affected (1.94 sec)Records: 30940 Duplicates: 0 Warnings: 0给表t3列rank1和log_date 添加histogrammysql> analyze table t3 update histogram on rank1,log_date;+--------+-----------+----------+-----------------------------------------------------+| Table | Op | Msg_type | Msg_text |+--------+-----------+----------+-----------------------------------------------------+| ytt.t3 | histogram | status | Histogram statistics created for column "log_date". || ytt.t3 | histogram | status | Histogram statistics created for column "rank1". |+--------+-----------+----------+-----------------------------------------------------+2 rows in set (0.19 sec)我们来看看histogram的分布状况mysql> select json_pretty(histogram) result from information_schema.column_statistics where table_name = "t3" and column_name = "log_date"G*************************** 1. row ***************************result: { "buckets": [ [ "2018-04-17", "2018-04-20", 0.01050420168067227, 4 ], ... , [ "2019-04-14", "2019-04-16", 1.0, 3 ] ], "data-type": "date", "null-values": 0.0, "collation-id": 8, "last-updated": "2019-04-17 03:43:01.910185", "sampling-rate": 1.0, "histogram-type": "equi-height", "number-of-buckets-specified": 100}1 row in set (0.03 sec)MySQL自动为这个字段分配了等高直方图,默认为100个桶。SQL A:select count(*) from t2/t3 where (rank1 between 1 and 10) and log_date < "2018-09-01";SQL A的执行结果:mysql> select count(*) from t2/t3 where (rank1 between 1 and 10) and log_date < "2018-09-01";+----------+| count(*) |+----------+| 2269 |+----------+1 row in set (0.01 sec)无histogram的执行计划mysql> explain format=json select count(*) from t2 where (rank1 between 1 and 10) and log_date < "2018-09-01"G*************************** 1. row ***************************EXPLAIN: { "query_block": { "select_id": 1, "cost_info": { "query_cost": "2796.11" }, "table": { "table_name": "t2", "access_type": "range", "possible_keys": [ "idx_rank1", "idx_log_date" ], "key": "idx_rank1", "used_key_parts": [ "rank1" ], "key_length": "5", "rows_examined_per_scan": 6213, "rows_produced_per_join": 3106, "filtered": "50.00", "index_condition": "(`ytt`.`t2`.`rank1` between 1 and 10)", "cost_info": { "read_cost": "2485.46", "eval_cost": "310.65", "prefix_cost": "2796.11", "data_read_per_join": "72K" }, "used_columns": [ "rank1", "log_date" ], "attached_condition": "(`ytt`.`t2`.`log_date` < "2018-09-01")" } }}有histogram的执行计划mysql> explain format=json select count(*) from t3 where (rank1 between 1 and 10) and log_date < "2018-09-01"G*************************** 1. row ***************************EXPLAIN: { "query_block": { "select_id": 1, "cost_info": { "query_cost": "0.71" }, "table": { "table_name": "t3", "access_type": "range", "possible_keys": [ "idx_rank1", "idx_log_date" ], "key": "idx_log_date", "used_key_parts": [ "log_date" ], "key_length": "4", "rows_examined_per_scan": 1, "rows_produced_per_join": 1, "filtered": "100.00", "index_condition": "(`ytt`.`t3`.`log_date` < "2018-09-01")", "cost_info": { "read_cost": "0.61", "eval_cost": "0.10", "prefix_cost": "0.71", "data_read_per_join": "24" }, "used_columns": [ "rank1", "log_date" ], "attached_condition": "(`ytt`.`t3`.`rank1` between 1 and 10)" } }}1 row in set, 1 warning (0.00 sec)我们看到两个执行计划的对比,有Histogram的执行计划cost比普通的sql快了好多倍。上面文字可以看起来比较晦涩,贴上两张图,看起来就很简单了。我这里举得例子相对简单,有兴趣的朋友可以更深入学习其他复杂些的例子。

mssql中的bak文件和mdf文件有什么区别?

mdf文件是在运行的数据文件文件和日志文件配合使用,可以通过分离的方式拷贝出来作为备份,还原的时候附加;bak文件是通过备份功能备份出来的文件,里面包含了数据和日志文件,而且备份时做了压缩,所以同一个数据库的bak文件比在运行的mdf+日志文件要小。

Microsoft SQL ServerMSSQL.1MSSQLData 目录里的.trc文件是做什么的?

按说DATA中当的都应该是你自己创建的数据库文件而且文件的格式是MDF和LDF 原程序的大小应该小于100MB 我用的2000版本的 可能和你的不太一样 但那么大肯定不是程序文件了我也不知道了

MSSQL 中存储过程 fetch x into @a,@b是什么意思.@在存储过程中是什么意思.为什么有的是@@呢!谢谢

@表示局部变量,@@表示全局变量

mssqlserver用ado连接时出现“一般性网络错误“,是什么原因

将连接字符串改为:driver={sql server};NetWork=DBMSSOCN;server=m_strServerName;Database=m_strDataBase;UID=m_strAccount;PWD=m_strPassword;"dbnmpntw - Win32 Named Pipesdbmssocn - Win32 Winsock TCP/IPdbmsspxn - Win32 SPX/IPXdbmsvinn - Win32 Banyan Vinesdbmsrpcn - Win32 Multi-Protocol (Windows RPC)dbnmp3 - Win16 Named Pipesdbmssoc3 - Win16 Winsock TCP/IPdbmsspx3 - Win16 SPX/IPXdbmsvin3 - Win16 Banyan Vinesdbmsrpc3 - Win16 Multi-Protocol (Windows RPC)其中NetWork=DBMSSOCN表示通过Winsock TCP/IP来连接服务器,如果不写则默认为NetWork=dbnmpntw

为什么asp连接mssql很卡呢???什么情况?

应该不会有这种问题的呢,可能是你空间的问题。

mssql 中的 OBJECT_ID 在mysql中用什么方法代替?

DROP PROC IF EXISTS `dnt_getunauditpost`

mssql2000存储过程中的@和@@的具体含义是什么?

@是定义变量 @@是定义全局变量的

SQL中的INNER JOIN和JOIN有什么区别

MSSQLServer中join等效于innerjoin相关知识点延伸,MSSQLServer中四种join方式:JION(innerjoin)(等值连接):只返回两个表中联结字段相等的行;leftjoin(左联接):返回包括左表中的所有记录和右表中联结字段相等的记录;rightjoin(右联接):返回包括右表中的所有记录和左表中联结字段相等的记录。

SQL中的自然连接是什么意思啊?

selectA.t1,A.t2,A.t3,B.t4,B.t5,B.t6fromAinnerjoinBonA.t1=B.t1;innerjoin只显示符合条件的数据行,此为默认的join方式,inner可以省略leftjoin显示符全条件的数据行及左边数据表中不符合条件的数据行rightjoin显示符全条件的数据行及右边数据表中不符合条件的数据行fulljoin显示符全条件的数据行及左边和右边数据表中不符合条件的数据行crossjoin直接将一个数据表的每一条数据行和另一个数据表的每一条数据行搭配成新的数据行,不要on来设置条件

sql语句什么时候用双引号或者单引号

估计你问的问题是在程序里写代码的时候有双引号和单引号!~双引号表示库里的字段是数值型的!~而单引号是表示字符型的!~select*fromtablewherea="text1.text"andb=""text2.text"""

SQL 数据库连接服务器失败是什么原因?

这种错误原因较多,一个个的排除。如果你的客户端和数据库服务器是在同一台机器上:1、可能是数据库服务没有启动2、可能是有实例名,你没有写上实例名,有实例名的联接是 服务器名称/实例名称3、没有安装上数据库服务如果客户端和服务器不是在同一台机器上,就是远程联接:1、看一下网络通不通,可以ping一下2、可能是数据库服务没有启动2、可能是有实例名,你没有写上实例名,有实例名的联接是 服务器名称/实例名称3、没有安装上数据库服务

用VB查询MSSQL数据库,提示超时已过期是什么问题啊?

请自己请教你的老师!因为你的问题没有说清楚哈!

MySQL中用什么代替mssql+中的varchar(max)

mysql默认不支持varchar的max,你可以转换一下类型,比如字符串是hahahha,本来是max(hahahha),你可以换成这样max(hahaha+0)这样值没变就转过去了,mysql内部转换属于。

关闭超线程有什么好处 mssql

虽然超线程技术是一个能够有效提升处理器性能的功能,但是在实际应用上却并没有让用户体验出使用上的差别。10款游戏测试结果都显示关闭超线程后游戏帧数会高一点,不过差距非常的小,全部都在误差范围之内,基本上差距都可以忽略了,所以超线程技术基本对游戏性能的影响基本可以无视掉。

sql NVL 是什么

都是oracle的函数..length()用于计算字符串长度,在mssql中对应函数为len()nvl是null值替换函数,判断参数1为null的情况下替换输出参数2,在mssql中的对应函数为isnull()length(nvl(rzsj,""))输出rzsj列值的长度,如果为null则输出空字符串的长度(0)

sqlservr.exe是什么进程?

sqlservr.exe是微软Microsoft SQL Server服务套装的一部分。该进程用于SQL基础服务。一般若是安装了SQLSEVER 数据库后会产生两个同名进程,NETWORK SERVICE & 你的用户名。中文名sqlservr.exe进程文件sqlservr 或者 sqlservr.exe正常路径Microsoft SQL ServerMSSQL进程名称Microsoft SQL Server Suite出品者Microsoft Corp.属 于Microsoft SQL Server Suite进程文件: sqlservr 或者 sqlservr.exe正常路径: ..Microsoft SQL ServerMSSQLBinn进程名称: Microsoft SQL Server Suite描述:出品者: Microsoft Corp.属于:Microsoft SQL Server Suite系统进程: 否后台程序: 否使用网络: 是硬件相关: 否常见错误: 未知N/A内存使用: 未知N/A安全等级 (0-5): 0间谍软件: 否广告软件: 否病毒: 否木马: 否相关问题:请注意 此进程与sqlserver.exe的差异,少一个字母 e ,后者是危害性较大的木马,详细资料请参考 词条sqlserver.exe。如何禁止sqlservr.exe 进程随机启动每次在启动计算机sqlservr.exe进程就随机启动了,但我是不用SQL的,是因为装了其他的软件才装的它。不想让sqlservr.exe随机启动,占了好大的内存,那么怎么来禁止它随机启动呢。第一种如果跟我的情况是一样。打开SQL选中 SQL Server ,右键,属性。选择 服务 。把启动模式改成 手动 或者 禁止 就可以了。第二种,是安装了SQL的。打开SQL Server服务管理器,反选“当OS启动时自动启动服务”即可

microsoft SQL serverMSSQLdata里的tempdb.mdf是干什么用的

在sql server中 tempdb库是用来存放临时表的。。比如一个session中create的#base1 ,#temp 之类的表。。至于你说的文件,只能猜测跟这个库有关。。。

3.局域网中的 MSSQL 服务器在什么情况下能够被 SQL server Snifer 嗅探到?

在发生连接或会话的时候

php+mssql 访问速度慢是什么原因?

原因可能有三方面:1、数据库的优化程度。2、程序与数据库的互容性。(php与mysql搭配是最好的)3、数据库本身的效率。

sqlserver2008服务器名称是什么

默认是.或本机IP或环回地址127.0.0.1如果有实例名就是ip(机器名)实例名,如果不是默认端口则要建别名,在别名里面加端口号,odbc访问则是ip(机器名)实例名,端口号

MSSQL 里的 text 与 ntext 有什么区别

text 是字节格式存储英文用的,也可以存中文但有时候会显示成乱码ntext 是多字节格式存储unicode的,也就是存储各种文字用的(早期用的是16位unicode,现在不知道了)。

mssql中文件大小用什么数据类型表示

numeric(19,2)decimal(19,2)19是长度,2是小数位长度,19和2你可根据你上传时的单位是B,K,M而定

php能脸上mssql数据库但是不能查询表是什么原因

给你看个完整的吧,不然就是数据库名错误,不然就是SQL语句写错1.连接MSSQL $conn=mssql_connect("实例名或者服务器IP","用户名","密码"); //测试连接 if($conn) { echo "连接成功"; } 2.选择要连接的数据库 mssql_select_db("dbname"); 3.执行查询 $rs = mssql_query("select top 1 id,username from tbname",$conn); 或者直接执行update,insert等语句,可以不用为返回结果赋值 mssql_query("update tbname set username="niunv" where id=1"); 4.获取记录集行数 echo mssql_num_rows($rs); 5.获取记录集 if($row=mssql_fetch_array($rs)) { $id = $row[0];//获取ID字段值 $username = $row[1];//获取username字段值 }

在sql server 2005中服务器实例名称是什么 如何查看

简单的这样看开始菜单下的 sqlserver配置管理器 -----sqlserver服务-------你看sqlserver() 括号里的为实例名 也可以按楼上的在注册表里(HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft SQL ServerInstalledInstances)或服务—SQL Server(实例名),默认实例为(MSSQLSERVER)或在连接企业管理时-查看本地实例

本地计算机上的MSSQLSERVER服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的

解决方法:开始--》运行--》输入msiexec /regserver 回车再启动Mssqlserver服务即可

数据库MSSQL运行慢是什么原因?

最好仔细找一下问题

MySQL数据库

目前MySQL被广泛地应用在Internet上的中小型网站中由于其体积小、速度快、总体拥有成本低,尤其是开放源开源数据库MySQLMySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQLAB公司目前MySQL被广泛地应用在Internet上的中小型网站中由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库盘点:开源社区那些免费的数据库软件MySQL为多种编程语言提供了API,包括C、C、C#、Delphi、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等而其自身是采用C和C编写的,使用了多种编译器进行测试,所以,MySQL能够保证源代码具有很强的可移植性这样的一款数据库,自然能够支持几乎所有的操作系统,从Unix、Linux到Windows,具体包括AIX、BSDi、FreeBSD、HP-UX、Linux、MacOS、、NetBSD、OpenBSD、OS/2Wrap、Solaris、SunOS、Windows等多种操作系统最重要的是,它是一个可以处理拥有上千万条记录的大型数据库与此同时,MySQL也产生了很多分支版本的数据库也非常值得推荐首先是MariaDB,它是一个采用Maria存储引擎的MySQL分支版本,是由原来MySQL的作者创的公司所开发的免费开源的数据库服务器与MySQL相比较,MariaDB更强的地方在于它拥有的引擎,包括Maria存储引擎、PBXT存储引擎、XtraDB存储引擎、FederatedX存储引擎,它能够更快的复制查询处理、运行的速度更快、更好的功能测试以及支持对Unicode的排序等其次是rcona,它为MySQL数据库服务器进行了改进,在功能和性能上较MySQL有着很显著的提升该版本提升了在高负载情况下的InnoDB的性能,同时,它还为DBA提供一些非常有用的性能诊断工具,并且提供很多参数和命令来控制服务器行为第三是,它使用了诸如google-mysql-tools、和OpenQuery对MySQL进行改造并且,它只包含MySQL的服务器版,并没有提供相应对MySQL的Connector和GUI工具进行改进非关系型数据库NoSQL从NoSQL的字面上理解,NoSQL就是NotOnlySQL,被业界认为是一项全新的数据库革命性运动,早期就有人提出,发展至2009年趋势越发高涨NoSQL的拥护者们提倡运用非关系型的数据存储,相对于目前铺天盖地的关系型数据库运用,这一概念无疑是一种全新的思维的注入盘点:开源社区那些免费的数据库软件当然,NoSQL也是随着互联网Web20网站的兴起才能取得长足的进步关键的需求在于,传统的关系数据库在应付Web20网站,特别是超大规模和高并发的SNS类型的web20纯动态网站显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展首先推荐的是,这是一个社区版Oracle的这个,是在10月4号的甲骨文全球大全上发布的的其中一个组件,是一个集成了Hadoop、、Oracle数据库Hadoop适配器、Oracle数据库Hadoop装载器及R语言的系统其次推荐的是MembaseMembase是NoSQL家族的一个新的重量级的成员Membase是开源项目,源代码采用了Apache20的使用许可该项目托管在GitHub上,目前可以下载beta版本的Linux二进制包该产品主要是由NorthScale的memcached核心团队成员开发完成,其中还包括Zynga和NHN这两个主要贡献者的工程师,这两个组织都是很大的在线游戏和社区网络空间的供应商并且,Membase容易安装、操作,可以从单节点方便的扩展到集群,而且为memcached(有线协议的兼容性)实现了即插即用功能,在应用方面为开发者和经营者提供了一个比较低的门槛做为缓存解决方案,Memcached已经在不同类型的领域(特别是大容量的Web应用)有了广泛的使用,其中Memcached的部分基础代码被直接应用到了Membase服务器的前端通过兼容多种编程语言和框架,Membase具备了很好的复用性在安装和配置方面,Membase提供了有效的图形化界面和编程接口,包括可配置的告警信息Membase的目标是提供对外的线性扩展能力,包括为了增加集群容量,可以针对统一的节点进行复制另外,对存储的数据进行再分配仍然是必要的第三推荐的是HibariHibari在日语中意思为“云雀”,它是一个专为高可靠性和大数据存储的数据库引擎,可用于云计算环境中,例如webmail、SNS和其他要求T/P级数据存储的环境中同时,Hibari也支持Java,C/C,Python,Ruby和Erlang语言的客户端第四推荐的是memcachedb这是一个由新浪网的开发人员开放出来的开源项目,给memcached分布式缓存服务器添加了BerkeleyDB的持久化存储机制和异步主辅复制机制,让memcached具备了事务恢复能力、持久化能力和分布式复制能力,非常适合于需要超高性能读写速度,但是不需要严格事务约束,能够被持久化保存的应用场景,例如memcachedb被应用在新浪博客上面第五推荐的是Leveldb这是一个Google实现的非常高效的kv数据库,目前的版本12能够支持billion级别的数据量了在这个数量级别下还有着非常高的性能,主要归功于它的良好的设计,特别是LSM算法LevelDB是单进程的服务,性能非常之高,在一台4个Q6600的CPU机器上,每秒钟写数据超过40w,而随机读的性能每秒钟超过10wXML数据库的优势XML数据库是一种支持对XML格式文档进行存储和查询等操作的数据管理系统在系统中,开发人员可以对数据库中的XML文档进行查询、导出和指定格式的序列化目前XML数据库有三种类型:(XEDB),即能处理XML的数据库;(NXD),即纯XML数据库;(HXD),即混合XML数据库关系数据库中的第一代XML支持是切分(或分解)文档,以适应关系表格或将文档原封不动地存储为字符或二进制大对象(CLOB或BLOB)这两个方法中的任一种都尝试将XML模型强制转换成关系模型然而,这两种方法在功能和性能上都有很大的局限性混合型模型将XML存储在类似于DOM的模型中XML数据被格式化为缓冲数据页,以便快速导航和执行查询以及简化索引编制在这里,首要要推荐的XML数据库是Sedna它号称是一款原生态的XML数据库,提供了全功能的核心数据库服务,包括持久化存储、ACID事务、索引、安全、热备、UTF8等实现了W3CXQuery规范,支持全文搜索以及节点级别的更新操作第二款XML数据库是BaseX这款数据库用来存储紧缩的XML数据,提供了高效的XPath和XQuery的实现,同时,它还提供一个前端操作界面盘点:开源社区那些免费的数据库软件第三款推荐的是XMLDB这款数据库使用了关系型数据库来存储任意的XML文档,因为所采用的存储机制,所以文档的搜索速度特别快,同时执行XSL转换也相当快XMLDB同时还提供了一个PHP的模块,可以应用在Web应用中第四块推荐的是X-Hive/DB它是一个为需要高级XML数据处理和存储功能的软件开发者设计的强大的专属XML数据库X-Hive/DBJavaAPI包含存储、查询、检索、转换和发表XML数据的方法与传统关系型数据库相比,XML数据库具有以下优势:第一,XML数据库能够对半结构化数据进行有效的存取和管理如网页内容就是一种半结构化数据,而传统的关系数据库对于类似网页内容这类半结构化数据无法进行有效的管理第二,提供对标签和路径的操作传统数据库语言允许对数据元素的值进行操作,不能对元素名称操作,半结构化数据库提供了对标签名称的操作,还包括了对路径的操作第三,当数据本身具有层次特征时,由于XML数据格式能够清晰表达数据的层次特征,因此XML数据库便于对层次化的数据进行操作XML数据库适合管理复杂数据结构的数据集,如果己经以XML格式存储信息,则XML数据库利于文档存储和检索;可以用方便实用的方式检索文档,并能够提供高质量的全文搜索引擎另外XML数据库能够存储和查询异种的文档结构,提供对异种信息存取的支持

请问:MSSQL数据库一般存在C盘的什么文件夹下?

你是在执行sql 的时候出现的异常吧sys是用户对象, 可能是一张表, 检查下是否存在

mssql 内联函数 给什么权限

sql server 用户访问权限设置:/*--示例说明 示例在数据库pubs中创建一个拥有表jobs的所有权限、拥有表titles的SELECT权限的角色r_test ,随后创建了一个登录l_test,然后在数据库pubs中为登录l_test创建了用户账户u_test, 同时将用户账户u_test添加到角色r_test中,使其通过权限继承获取了与角色r_test一样的权限, 最后使用DENY语句拒绝了用户账户u_test对表titles的SELECT权限。 经过这样的处理,使用l_test登录SQL Server实例后,它只具有表jobs的所有权限。--*/ USE pubs --创建角色 r_test : EXEC sp_addrole r_test --授予 r_test 对 jobs 表的所有权限 :GRANT ALL ON jobs TO r_test --授予角色 r_test 对 titles 表的 SELECT 权限: GRANT SELECT ON titles TO r_test --添加登录 l_test,设置密码为pwd,默认数据库为pubs : EXEC sp_addlogin l_test,pwd,pubs --为登录 l_test 在数据库 pubs 中添加安全账户 u_test : EXEC sp_grantdbaccess l_test,u_test --添加 u_test 为角色 r_test 的成员: EXEC sp_addrolemember r_test,u_test -------------------------------补充-------------- --上面的授权为对单表进行授权,2005可对SCHEMA级别进行授权 ,授予安全账户 u_test,架构interface下的查询权限: GRANT SELECT ON SCHEMA::interface TO u_test --拒绝安全账户 u_test,架构dbo下的权限: DENY VIEW DEFINITION ON SCHEMA::dbo TO risk --拒绝安全账户 u_test 对 titles 表的 SELECT 权限: DENY SELECT ON titles TO u_test /*--完成上述步骤后,用 l_test 登录,可以对jobs表进行所有操作,但无法对titles表查询,虽然角色 r_test 有titles表的select权限,但已经在安全账户中明确拒绝了对titles的select权限,所以l_test无titles表的select 权限。--*/ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------从数据库 pubs 中删除安全账户: EXEC sp_revokedbaccess u_test --删除登录 l_test: EXEC sp_droplogin l_test --删除角色 r_test: EXEC sp_droprole r_test exec sp_dropsrvrolemember Naa, sysadmin go exec sp_addsrvrolemember Naa, securityadmin go --作好SQL的安全管理,首先做好用户安全,简单的,只允许sql的用户访问sql(防止利用administrator组用户访问)1、企业管理器--右键SQL实例--属性--安全性--身份验证--选择"sql server和windows"--确定 2、企业管理器--安全性--登陆--右键sa--设置密码--其他用户也设置密码 3、删除用户: BUILTINAdministrators Administrator --这个用户不一定有 这样可以防止用windows身份登陆SQL 4、设置进入企业管理器需要输入密码:在企业管理器中 --右键你的服务器实例(就是那个有绿色图标的) --编辑SQL Server注册属性 --选择"使用 SQL Server 身份验证" --并勾选"总是提示输入登录名和密码" --确定 --经过上面的设置,你的SQL Server基本上算是安全了。其次,改默认端口隐藏服务器,减少被攻击的可能性 SQL Server服务器: --开始 --程序 --Microsoft SQL Server --服务器网络实用工具 --启用的协议中"TCP/IP" --属性 --默认端口,输入一个自已定义的端口,比如2433 --勾选隐藏服务器管好sql的用户,,防止访问他不该访问的数据库(总控制,明细还可以控制他对于某个数据库的具体对象具有的权限) ---切换到你新增的用户要控制的数据库: use 你的库名 go ----新增用户: exec sp_addlogin test ----添加登录: exec sp_grantdbaccess Ntest ----使其成为当前数据库的合法用户: exec sp_addrolemember Ndb_owner, Ntest ----授予对自己数据库的所有权限 -----这样创建的用户就只能访问自己的数据库。及数据库中包含了guest用户的公共表 go ----删除测试用户: exec sp_revokedbaccess Ntest ----移除对数据库的访问权限: exec sp_droplogin Ntest ----删除登录: 如果在企业管理器中创建的话,就用,企业管理器--安全性--右键登录--新建登录 常规项--名称中输入用户名 --身份验证方式根据你的需要选择(如果是使用windows身份验证,则要先在操作系统的用户中新建用户) --默认设置中,选择你新建的用户要访问的数据库名、 服务器角色项 这个里面不要选择任何东西, 数据库访问项 勾选你创建的用户需要访问的数据库名, 数据库角色中允许,勾选"public","db_ownew" 确定,这样建好的用户与上面语句建立的用户一样。最后一步,为具体的用户设置具体的访问权限,这个可以参考下面的最简示例:--添加只允许访问指定表的用户: exec sp_addlogin 用户名,密码,默认数据库名 -----添加到数据库: exec sp_grantdbaccess 用户名 ----分配整表权限: GRANT SELECT , INSERT , UPDATE , DELETE ON table1 TO [用户名] -----分配权限到具体的列: GRANT SELECT , UPDATE ON table1(id,AA) TO [用户名]

数据库MSSQL运行慢是什么原因

防火墙是不是设置了关闭1433端口,数据量小于10w,sql根本与access无差异,有可能是系统或设置问题,mssql的默认端口1433一定要开启

mysql的数据库扩展名是什么?

数据文件:*.myd 索引文件:*.myi 表定义文件:*.frm

请问MSSQL,ORACLE,数据库引擎是什么?

各类数据库管理系统的设计都有其独特之处。在Oracle上也是有存储引擎的,但Oracle官方从来都不这么提,只说存储架构。按功能上来看,InnoDB在设计之初参考了Oracle的设计(如表空间,extent,块等)。MSSQL -- 不知道。

什么是AD,DHCP ,DNS, IIS ,Web ,Email,MssQL分别是什么???

AD是广告,DHCP是动态分配服务器、DNS是域名服务器、IIS是系统组件ASP服务台、Web网站服务器、Email是邮件服务器、MySQL是数据库。

ACCESS、MSSQL、MYSQL 这三个数据库有什么不一样.

管理方式/和功能特色都不一样 ACCESS安全相对高点,管理也方便点,但是缺有致命的弱点,那就是无法支持大规模的用户同时使用 而后面两种则不在存在上面的弱点 MYSQL 要比MSSQL 用得广,主要是MYSQL 由于其惊人特点,反应速度快,如果跟PHP一起使用将是比较完美的,所导致的 MSSQL 特色是自身功能强大,有于设计上的不同从而使得他使用的SQL语言所带来的流量相对少很多,就是语言精简,同时数据库本身也可以自行处理一些事情,从而导致了对服务器的负担明显增加鱼和熊掌的选择就看拿边能带来的利益多了

MSSQL及MYSQL 是什么意思!

MSSQL的全名是:Microsoft SQL ServerMicrosoft的意思是微软,SQL Server是一种关系数据库,两者结合后意思是:微软公司的关系数据库产品~MYSQL是SUN公司的关系数据库产品~两者之间最大的区别在于:MSSQL是要收费的,而MYSQL是完全开源免费的~

MsSqlServer协议和SqlExpress协议中的IP1、IP2、IP3……IPALL有什么作用

SQL Server 配置管理器显示安装 SQL Server 时可用的 IP 地址。如果发生以下情况,可用的 IP 地址也会随之改变:添加或删除网卡、动态分配的 IP 地址过期、重新配置网络结构或计算机的物理位置发生改变(例如便携式计算机在另一座大楼连接到网络)。若要更改 IP 地址,可以编辑“IP 地址”框,然后重新启动 SQL Server。这里的IP与cmd里ipconfig /all 出来的个数是一致。你安装SQL时,它会自动分配上去的。不用管它。当你需要远程连接时,一般是用第一个。修改完记得重启服务才能生效。

卸载solid works2015时,文件夹有一项”MSSQL11.TEW_SQLEXPRESS“这个是什么东西?能不能删除卸载?

最好是由360安全卫士这类专业清理软件清理残留,一般来说自己不要动最好。

sQL server 什么是实例

sqlserver 的结构:服务器 实例 数据库 ...一个服务器可以有多个实例,一个实例可以有多个数据库、用户...

我想购买正版 mssql,但是不懂微软官网上面那版本介绍什么区别,请高手帮帮忙

像这种问题你可以直接联系微软代理商或者直接联系微软会有专门的人员和你联系与你沟通购买事宜
 首页 上一页  8 9 10 11 12 13 14 15 16 17 18  下一页  尾页