首页 文章
  • 0 votes
     answers
     views

    CentOS 6.7和Windows MSSQL连接 - FreeTDS和PHP

    我搜索了与我的问题相关的答案,但没找到我正在寻找的东西 . 我有Linux CentOS 6.7的服务器 . 我需要在Windows Small Business Server 2003上连接到MS SQL Server 2005.在CentOS中我安装了FreeTDS,并设法使用以下命令从终端连接到SQL Server: # TDSVER=7.0 tsql -H ServerIPAdress -...
  • 7 votes
     answers
     views

    参数的执行速度不如硬编码值

    我有一个执行非常糟糕的存储过程 . 当我声明一个变量时,设置它的值,然后在where子句中使用它,该语句需要一个多小时才能运行 . 当我在where子句中对变量进行硬编码时,它会在不到一秒的时间内运行 . 我开始通过执行计划调查它出了什么问题 . 看起来当我尝试传递一些声明的变量时,执行计划会创建一些Hash Match,因为它从使用UNION和公用表表达式的视图中选择值 . /*********...
  • 121 votes
     answers
     views

    GRANT EXECUTE到所有存储过程

    以下命令是否有效地为用户“MyUser”授予了在数据库中执行所有存储过程的权限? GRANT EXECUTE TO [MyDomain\MyUser]
  • 0 votes
     answers
     views

    查找多个范围之间的所有INT

    我正在使用发现工具处理文档父/子系列 . 是否有一种简单的方法可以在多个范围列表之间返回所有数字? 我有一个包含 StartingBatesNumber , BegAtt 和 EndAtt 的359行 #tempTable BegAtt 是贝茨范围的开头, EndAtt 是贝茨范围内的最后一个文档 . 这里是 #tempTable 的一些示例数据: StartingBatesNumber BegA...
  • 0 votes
     answers
     views

    TSQL:将IP与GeoIP数据库进行匹配的有效方法

    我正在寻找将MaxMind free GeoIP database导入SQL服务器,然后发出查询以查找给定IP地址的IP范围 我现在可以想到两种方法: 为每个IPv4网络前缀Stroing bitmask int32值,然后为每个可能的网络前缀长度计算IP的网络前缀,并在网络前缀列中查找前缀 . 我可以从最常见的前缀长度开始,无论它是什么,并继续使用不常见的前缀长度,直到找到记录 . 在int...
  • 3 votes
     answers
     views

    如何在SQL中计算IPv6 CIDR路由前缀?

    我一直在使用在SQL Server 2012实例上运行的T-SQL从IPv4和IPv6地址范围生成CIDR . 通常我们的应用程序(在db之外)负责计算CIDR,但我目前需要在数据库中进行CIDR计算 . 由于IPv6太大而无法存储在 bigint 数据类型中,因此我们将IP地址存储为 binary(4) 或 binary(16) . 如果有点丑陋的话,计算IPv4范围的路由前缀相对简单: de...
  • 0 votes
     answers
     views

    如何在第三个表中没有公共列的情况下连接三个表?

    我有三张 table . 表1,表2,表3 . 我可以在prod_id列的基础上加入table1和table2(这是常见的,并将table2与外键概念联系起来) . 现在我想将table3与table1和table2的结果连接起来,其中table3中的所有列都相同 . 我尝试了row_number()但它没有给出正确的结果 . 我该如何在SQL Server 2016中执行此操作?
  • 7 votes
     answers
     views

    存储过程什么都不返回

    此存储过程不起作用 . 我检查了SQL,并在直接解析到DB时返回正确的值 . 真奇怪啊!它只返回0行 . 可能有什么不对? ALTER PROCEDURE dbo.GetSaltOfUser ( @eMail nvarchar ) AS DECLARE @result nvarchar /* SET NOCOUNT ON */ BEGIN SELECT @result = sa...
  • 7 votes
     answers
     views

    INNER JOIN和LEFT / RIGHT OUTER JOIN的问题

    我有三张 table : Orders OrderId,int PK CustomerId,int FK to Customer,允许NULL Customers CustomerId,int PK CompanyId,int FK to Company,不允许NULL Companies CompanyId,int PK 姓名,nvarchar(50) 我...
  • 112 votes
     answers
     views

    如何在SQL表中复制记录但是换出新行的唯一ID?

    This question接近我需要的,但我的情况略有不同 . 源表和目标表是相同的,主键是uniqueidentifier(guid) . 当我尝试这个: insert into MyTable select * from MyTable where uniqueId = @Id; 我显然遇到了主键约束违规,因为我试图复制主键 . 实际上,我根本不想复制主键 . 相反,我想创建一个新的...
  • 5 votes
     answers
     views

    INSTEAD OF UPDATE触发并更新主键

    我正在开发新软件时对现有数据库进行更改 . 还有很多遗留软件使用需要继续工作的数据库,即我想维护现有的数据库表,过程等 . 目前我有 table CREATE TABLE dbo.t_station ( tx_station_id VARCHAR(4) NOT NULL, tx_description NVARCHAR(max) NOT NULL, ...
  • 0 votes
     answers
     views

    在一个只有两列的复合PK连接表中,我需要另一个索引吗?

    考虑以下: tbl_Book BookID PK int identity(1,1) tbl_Author AuthorID PK int identity(1,1) tbl_BookAuthor BookID FK int AuthorID FK int 我有一个复合/复合主键(BookID,AuthorID) . 更具体地说,基于SSMS设计器的默认值: 列:( Boo...
  • 3 votes
     answers
     views

    SQL Server索引问题

    我有一个查询连接SQL Server 2005中的3个表,但没有Where子句,所以我索引连接语句中找到的字段 . 如果我的索引设置为Col1,col2,col3 我的加入是 Tbl1 inner join tbl2 On Tbl1.col3=tbl2.col3 Tbl1.col2=Tbl2.col2 Tbl1.col1=Tbl2.col1 与索引的顺序相比,join语句的顺序是否有所不同?我应...
  • 4 votes
     answers
     views

    分区大表 - 索引

    我已经分配了一项任务来改善表格表格上的数据管理过程(数据归档)就像200gb 我现在正在阅读有关表格分区和最佳实践的内容,据我所知,现在流程就像 创建文件组和文件 创建分区功能 分区方案 - (映射间隔以适应文件组) 重新创建聚簇索引 - 这是将表物理移动到另一个文件的时刻 利润:) 但目前无法找到一个信息,现有的非聚簇索引是怎么回事?从这里:http://technet....
  • 0 votes
     answers
     views

    同时拥有非群集和聚簇索引的好处

    假设我们的表A包含列col1,col2和col3 . 我们在col2上有非聚集索引(3个级别) . 当您使用非聚集索引进行搜索并希望返回col3的值时,它会从索引读取3页,然后通过引用移动到数据库并读取另外一页 . 现在让我们假设我们在col1上也有聚簇索引 . 然后,对于相同的搜索,它将从非聚集索引中读取3个页面,然后在聚簇索引中进行密钥查找(至少另外3个页面) . 因此,聚集索引会增加成本 ....
  • 0 votes
     answers
     views

    SQL Server中的插入速度确实很慢

    我需要帮助将200万行插入表中 . 我插入的表有40亿行,我插入的表有200万行 . 插入速率约为每分钟190行 . DECLARE @BatchSize INT = 5000 WHILE 1 = 1 BEGIN INSERT INTO [dbo].[a] ([a].[col1], [a].[col2], [a].[adate], [a].[importdate]) S...
  • 178 votes
     answers
     views

    多语句表值函数与内联表值函数

    举几个例子,只是说: 内联表值 CREATE FUNCTION MyNS.GetUnshippedOrders() RETURNS TABLE AS RETURN SELECT a.SaleId, a.CustomerID, b.Qty FROM Sales.Sales a INNER JOIN Sales.SaleDetail b ON a.SaleId = b.Sal...
  • 0 votes
     answers
     views

    从SELECT存储过程访问SQL表函数列

    我有一个非常大的SELECT存储过程,它有多个返回列和多个INNER JOINS和LEFT JOINS . 我还有一个包含10列的表函数,表函数的结果集基于用户ID . 我的问题是,如何将表函数合并到主SELECT存储过程中,并能够根据用户ID从表函数返回列 . 主要存储过程: SELECT dbo.WebPersonalInfo.UserID, dbo.Web...
  • 0 votes
     answers
     views

    存储过程不返回受影响的行

    这是(确切地说)我的一个存储过程 . 它在执行时不会返回受影响的行 . 所以我尝试运行整个查询,提供参数的给定值,然后返回一(1)个受影响的行 . 我想知道为什么它在存储过程中不会返回受影响的行 . 我还删除了SET NOCOUNT ON,这样就不会阻止额外的结果集干扰SELECT语句 . 请帮忙 . 这是执行语句 exec STOREPROCEDURENAME @levelnumber=1,@l...
  • 0 votes
     answers
     views

    SQL / TSQL:在多个表上使用PIVOT

    我正在尝试用SQL中的PIVOT解决两个类似的问题 . 我有三张 table : 第一个有列:orderid,empid,orderdate; 第二列:orderid,productid,unitprice 第三个包含列:empid,firstname,lastname等(有关worker的其他信息) 现在,我需要使用PIVOT来管理这样的事情: empid firstname l...
  • 152 votes
     answers
     views

    Sql Server字符串到日期转换

    我想转换像这样的字符串: '10/15/2008 10:06:32 PM' 进入Sql Server中的等效DATETIME值 . 在Oracle中,我会说: TO_DATE('10/15/2008 10:06:32 PM','MM/DD/YYYY HH:MI:SS AM') This question意味着我必须将字符串解析为standard formats之一,然后使用其中一个代码进行转换...
  • 241 votes
     answers
     views

    如何从TSQL日期时间字段获取YYYY-MM-DD格式的日期?

    如何以 YYYY-MM-DD 格式从SQL Server检索日期?我需要这个与SQL Server 2000及更高版本一起工作 . 有没有一种简单的方法在SQL Server中执行此操作,还是在检索结果集后以编程方式更容易地进行转换? 我已阅读Microsoft Technet上的CAST and CONVERT,但我想要的格式不是't listed and changing the date f...
  • 1 votes
     answers
     views

    如何计算年,月,日两个日期之间的约会? [重复]

    可能重复:如何使用年,月和日计算T-SQL中的年龄 我有一个应用程序,它完全计算特定日期的年龄,即几年 - 几天 . 在sql server 2005中有没有简单的方法来计算它 . 实际上我已经为此创建了一个功能,但这非常复杂 . 我只是想知道在我不知道的sql server中是否有任何简单的方法或任何功能? 对于任何申请人,在特定日期计算确切年龄的要求非常简单 .
  • 2 votes
     answers
     views

    将整数转换为工作日列表

    我有一个存储在数据库中的整数(SQLAgent频率间隔)这个整数实际上是计划运行的星期几的选定日期之和 . 可能的值是这些值的任意组合 星期天= 1 星期一= 2 星期二= 4 星期三= 8 星期四= 16 星期五= 32 星期六= 64 ex 65表示时间表应该在周六和周日运行 我的问题是我需要在给出65时将这些值表示为文本“Saturday”和“Sunday”,...
  • 0 votes
     answers
     views

    无法加载指定的元数据资源 . 代码第一种方法

    嗨,我正在尝试使用EF5上的代码第一种方法创建表 . 我在名为“SERVER01”的服务器上创建了一个名为“DEV_Database”的数据库 . 在包管理器控制台上输入“enable-migrations -contexttypename Entities -force”后,我收到此错误“无法加载指定的元数据资源” . 我有这个连接字符串由VS12为我自动生成,这句话很好用其他方法 . 谁能帮我...
  • 0 votes
     answers
     views

    TSQL DDL约束错误:“第12行:'('附近的语法错误 . ”

    我正在尝试创建一个表 . 这是创建DDL . 我在SQL Server 2005 MSDE上运行时遇到错误 . 我不明白为什么 - 它在2008/2012上运作良好 . CREATE TABLE [dbo].[CuCompanyHolidays]( [HolidayID] [int] IDENTITY(1,1) NOT NULL, [HolidayName] [varchar](2...
  • 0 votes
     answers
     views

    子字符串自动应用于查询中的文本类型列

    我有以下查询 select * from table1 如果table1包含文本类型列/列,那么我只需要100个字符 假设,最终用户不知道表的模式(列名),只知道表名从前端应用程序的查询分析器执行此查询 . 用户编写器在textarea中查询并执行 *我正在使用SqlServer2005不要在frond end的查询中使用substring函数我可以在C#代码中的文本列上使用子字符串函数,但我想...
  • 4 votes
     answers
     views

    检查临时表中是否存在列始终在SQL Server中返回false

    我有以下执行语句创建一个表(使用来自另一个过程的数据),将值插入临时表,添加一个图像列(因为它们不能包含在分组中),然后根据另一个标准更新它临时表(生成的表字段在SSRS报告中使用,因此我需要保留IMAGE数据类型): EXEC ('SELECT ' + @COL_TO_GROUP_BY + @COL_ADDITONAL + @sColVals + ' INTO #RESULTS_TABLE fr...
  • 2 votes
     answers
     views

    无效的对象名称## Temp创建全局临时表时出错

    我有几个表中的数据,我想加载到SQL Server中的临时表 . 我正在创建一个从表中获取数据的存储过程 . 然后我创建全局临时表并将存储过程的结果插入其中 . 但是,当尝试从临时表中选择数据时,我收到此错误“无效的对象名称## Temp” 如果它是全局临时表,为什么会出现此错误? DROP PROCEDURE usp_GetEmp GO CREATE PROCEDURE usp_GetEmp A...
  • 2 votes
     answers
     views

    SQL SSIS使用派生列转换来处理空数据 . 替代方案?

    我有一个包含200列的源表,我将它放入SSIS并使用“OLEDB Source”组件来提供数据,然后将流映射到派生列转换以通过替换它来处理空数字/日期/文本数据空白值 . 目前,我在Derived Column中设置以下表达式: ISNULL([EMPLOYEE ID]) ? "" : [EMPLOYEE ID] ISNULL([EMPLOYEE FNAME]) ? &quo...

热门问题