小编CM-*_*Dev的帖子

如何使用Python pypyodbc获取整个VARCHAR(MAX)列

我有一个Python程序,使用ODBC连接连接到MSSQL数据库.我正在使用的Python库是pypyodbc.

这是我的设置:

  • Windows 8.1 x64
  • SQL Server 2014 x64
  • Python 2.7.9150
  • PyPyODBC 1.3.3
  • ODBC驱动程序:SQL Server Native Client 11.0

我遇到的问题是,当我查询带有varchar(max)列的表时,内容被截断.

我是pypyodbc的新手,我一直在疯狂地搜索,并且找不到任何关于如何防止在pypyodbc甚至pyodbc中发生这种情况的事情.至少没有我一直在使用的搜索词,我不知道还有什么其他的短语可以尝试.

我甚至尝试添加SET TEXTSIZE 2147483647;到我的SQL查询,但数据仍然被截断.

我该如何防止这种情况发生?或者,你能指出我正确的方向吗?

更新:

所以,我尝试在我的SQL查询中执行强制转换.当我这样做CAST(my_column as VARCHAR(MAX))时截断在相同的位置.但是,如果我这样做CAST(my_column as VARCHAR(8000))会给我一个更大的文本集,但它仍然会截断一些内容.如果我尝试做任何比8000我更大的错误,说8000我是最大的,我可以使用.有人知道这里会发生什么吗?使用MAX不起作用似乎很奇怪.

python sql-server pyodbc pypyodbc

7
推荐指数
2
解决办法
2849
查看次数

无法使用to_json将pandas DataFrame转换为json

我知道Stack Overflow上有关于同样问题的其他几篇文章,但是,在这些帖子上找不到一个解决方案,或者我在网上找到的任何其他帖子都有效.我在熊猫上关注了大量的教程,视频,书籍和Stack Overflow帖子,所有提到的解决方案都失败了.

令人沮丧的是,我发现的所有解决方案都是正确的,或者至少它们应该是正确的; 我对熊猫很新,所以我唯一的结论就是我可能做错了什么.

这是我开始的pandas文档:Pandas to_json Doc.我似乎无法让pandas to_json将pandas DataFrame转换为json对象或json字符串.

基本上,我想将csv字符串转换为DataFrame,然后将该DataFrame转换为json对象或json字符串(我不关心哪一个).然后,一旦我有了json数据结构,我就会将它绑定到D3.js条形图

这是我想要做的一个例子:

# Declare my csv string (Works):
csvStr = '"pid","dos","facility","a1c_val"\n"123456","2013-01-01 13:37:00","UOFU",5.4\n"65432","2014-01-01 14:32:00","UOFU",5.8\n"65432","2013-01-01 13:01:00","UOFU",6.4'
print (csvStr) # Just checking the variables contents

# Read csv and convert to DataFrame (Works):
csvDf = pandas.read_csv(StringIO.StringIO(csvStr))
print (csvDf) # Just checking the variables contents

# Convert DataFrame to json (Three of the ways I tried - None of them work):
myJSON = csvDf.to_json(path_or_buf = None, orient = 'record', date_format = 'epoch', …
Run Code Online (Sandbox Code Playgroud)

python json pandas

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

不能推或拉Git

我是使用Git的新手,但我确实理解了基础知识.但是,我还没有遇到过推/拉冲突的情况......直到现在.

另外,我应该指出,我用来与Git存储库交互的GUI工具是Atlassian SourceTree(我们使用Atlassian Stash来管理我们的repo).

这是场景:

我有2次提交Push,显然我需要进行4次更改Pull.

当我试图Pull得到这个:

git -c diff.mnemonicprefix=false -c core.quotepath=false fetch origin

git -c diff.mnemonicprefix=false -c core.quotepath=false pull --no-commit origin master
You have not concluded your merge (MERGE_HEAD exists).

Please, commit your changes before you can merge.

Completed with errors, see above.
Run Code Online (Sandbox Code Playgroud)

它说我需要完成我的合并,但它不允许我做任何事情.我没有得到合并列表,也没有自动合并.我似乎无法通过合并,所以我可以继续解决Push/Pull冲突.

当我试图Push得到这个:

git -c diff.mnemonicprefix=false -c core.quotepath=false push -v --tags origin master:master
Pushing to http://XXXXXX@XXXXXXXX.XXXX.XXXX:XXXX/XXXX/XXXX/XXXXX.git
To http://XXXXXX@XXXXXXXX.XXXX.XXXX:XXXX/XXXX/XXXX/XXXXX.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to …
Run Code Online (Sandbox Code Playgroud)

git bitbucket-server atlassian-sourcetree

2
推荐指数
1
解决办法
5675
查看次数