小编pat*_*net的帖子

为什么我无法在运行时更改变量long_query_time变量

我使用的是MySQL 5.1.66版.我看到long_query_time变量是动态的,但是当我尝试时

set GLOBAL long_query_time=1; 
Run Code Online (Sandbox Code Playgroud)

经过上面的操作再次尝试了

mysql> show variables like 'long_query_time';
+-----------------+-----------+
| Variable_name   | Value     |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
1 row in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)

从mysql控制台它没有被改变,为什么?

mysql mysql-slow-query-log

25
推荐指数
2
解决办法
3万
查看次数

"无法创建OLE DB提供程序的实例"错误作为Windows身份验证用户

我试图在Oracle服务器上从MS SQL Server运行openrowset.

当我执行以下命令时:

select * from
OPENROWSET('OraOLEDB.Oracle','srv';'user';'pass', 
'select * from table')
Run Code Online (Sandbox Code Playgroud)

发生以下错误

Msg 7302, Level 16, State 1, Line 1
Cannot create an instance of OLE DB provider "OraOLEDB.Oracle" for linked server "(null)".
Run Code Online (Sandbox Code Playgroud)

谁能告诉我如何使用openrowset OraOLEDB.Oracle

我使用的是64位版本的MS SQL Server和Oracle OLEDB驱动程序.

编辑

我在运行带有MS SQL Server 2008 x64的Windows 7 x64Windows Server 2008 x64的两台计算机上尝试过此操作.两者都显示相同的错误消息.

sql-server oracle oledb linked-server windows-authentication

20
推荐指数
3
解决办法
9万
查看次数

SELECT和INSERT的OPENQUERY有何不同?

我知道以下查询将从链接服务器下拉结果集:

SELECT * FROM openquery(DEVMYSQL, 
    'SELECT event_id, people_id, role_id, rank, last_updated FROM event_cast')
Run Code Online (Sandbox Code Playgroud)

但是,在插入时这是同样的情况吗?它会下拉结果集还是仅获取列信息?

INSERT INTO openquery(DEVMYSQL, 
     'SELECT event_id, people_id, role_id, rank, last_updated FROM event_cast')
Run Code Online (Sandbox Code Playgroud)

如果是前者,那么这是非常低效的.我应该限制返回的结果集,这会影响我INSERT吗?

这基本上是如何的一个问题OPENQUERY,当谈到工作SELECTINSERT.

我感谢任何帮助.

mysql t-sql sql-server odbc linked-server

13
推荐指数
2
解决办法
6万
查看次数

R apply error:'X'必须有名为dimnames

"apply"文档提到"在哪里'X'命名为dimnames,它可以是一个选择维名称的字符向量." 我想在data.frame上仅对特定列使用apply.我可以使用dimnames功能来执行此操作吗?

我意识到我可以将subset()X只包含感兴趣的列,但我想更好地理解"命名的dimnames".

以下是一些示例代码:

> x <-  data.frame(cbind(1,1:10))
> apply(x,2,sum)
X1 X2
10 55
> apply(x,c('X2'),sum)
Error in apply(x, c("X2"), sum) : 'X' must have named dimnames
> dimnames(x)
[[1]]
 [1] "1"  "2"  "3"  "4"  "5"  "6"  "7"  "8"  "9"  "10"

[[2]]
[1] "X1" "X2"
> names(x)
[1] "X1" "X2"
> names(dimnames(x))
NULL
Run Code Online (Sandbox Code Playgroud)

r dataframe

6
推荐指数
1
解决办法
6140
查看次数

并行wilcox.test使用group_by和summary

必须有一种R-ly方式wilcox.test使用group_by并行调用多个观察.我已经花了很多时间阅读这篇文章,但仍然无法弄清楚是否wilcox.test有这样的工作.下面的示例数据和代码,使用magrittr管道和summarize().

library(dplyr)
library(magrittr)

# create a data frame where x is the dependent variable, id1 is a category variable (here with five levels), and id2 is a binary category variable used for the two-sample wilcoxon test
df <- data.frame(x=abs(rnorm(50)),id1=rep(1:5,10), id2=rep(1:2,25))

# make sure piping and grouping are called correctly, with "sum" function as a well-behaving example function 
df %>% group_by(id1) %>% summarise(s=sum(x))
df %>% group_by(id1,id2) %>% summarise(s=sum(x))

# make sure wilcox.test is …
Run Code Online (Sandbox Code Playgroud)

r group-summaries dplyr magrittr

6
推荐指数
2
解决办法
2504
查看次数

如何仅使用ibdata和*.ibd文件为MySQL InnoDB表重新创建FRM文件?

这与我在stackoverflow上看到的相关InnoDB修复问题略有不同.

假设我使用innodb_file_per_table = 1在MySQL 5.1数据库中恢复了以下内容:

db/tablename.ibd
innodb/ibdata1
innodb/ib_logfile0
innodb/ib_logfile1
Run Code Online (Sandbox Code Playgroud)

我丢失了db/tablename.frm文件.我可以启动数据库服务器,但InnoDB抱怨:

110723 13:26:33  InnoDB: Error: table 'db/tablename'
InnoDB: in InnoDB data dictionary has tablespace id 5943,
InnoDB: but tablespace with that id or name does not exist. Have
InnoDB: you deleted or moved .ibd files?
Run Code Online (Sandbox Code Playgroud)

我怎样才能重建FRM文件?

mysql database innodb restore database-restore

5
推荐指数
1
解决办法
1万
查看次数

更改SAS中的临时文件目录

我需要使用PROC.SQL语句进行分析.问题是,当我使用SQL语句时,SAS使用C盘来创建临时文件.我的数据集非常大,我没有足够的空间.你能解释一下如何在其他地方而不是C盘分配这个临时文件吗?

sas

4
推荐指数
1
解决办法
3079
查看次数

使用带有MySQL链接服务器的openquery,宽varchar字段导致"不支持请求转换"错误

我正在尝试将表从MySql迁移到MSSQL,openquery但我不断收到以下错误消息:

OLE DB provider "MSDASQL" for linked server "MYSQL" returned message "Requested conversion is not supported.".
Msg 7341, Level 16, State 2, Line 1
Cannot get the current row value of column "[MSDASQL].description" from OLE DB provider "MSDASQL" for linked server "MYSQL". 
Run Code Online (Sandbox Code Playgroud)

我正在尝试运行的SQL查询:

insert into dbo.tickets (id, description, createdAt)
select * from openquery(MYSQL, 'select * from mydb.tickets')
Run Code Online (Sandbox Code Playgroud)

随着openquery我已经复制了几个表,但这个招数我.

在数据库的两边,description字段是varchar(8000).在MySql中没有描述为null的行,最长的描述只有5031个字符.

我尝试使用相同的数据结构在MySql中创建一个新视图,但是得到了相同的错误.我无法确定哪一行具有无效的描述字段,因为该表包含超过65000行.

我也尝试将数据转储到SQL文件中,但我进入OutOfMemoryException了Management Studio.转储的sql文件本身大约是60 MB.

有关迁移此数据的任何建议或其他方式吗?

提前致谢!

mysql sql sql-server odbc openquery

3
推荐指数
1
解决办法
1万
查看次数