J'ai un cadre de données avec plusieurs colonnes dépassant 255 caractères, lorsque j'essaie d'importer la trame de données sur le serveur SQL en utilisant le code ci-dessous, plusieurs colonnes sont tronquées à 255 caractères.Importer une trame de données de R vers le serveur SQL à l'aide de sqlSave() mais la colonne est tronquée à 255 octets?
myconn <- odbcDriverConnect("db_name")
sqlSave(myconn, my_data, tablename = "Table_1" ,rownames=FALSE, append = TRUE)
choses que j'ai essayé, mais ne fonctionne pas:
J'ai essayé de créer la table dans sql avant d'importer les données de R, mais cela ne fonctionne pas:
CREATE TABLE TEST_Table
(
[Column_1] nvarchar(max),
[Column_2] nvarchar(max),
[Column_3] nvarchar(max)
);
J'ai également essayé de spécifier varTypes
comme ci-dessous avant d'importer les données:
columnTypes <- list(Column_1 = "nvarchar(max)", Column_2 = "nvarchar(max)", Column_3 = "nvarchar(max)")
sqlSave(myconn, my_data, tablename = "Table_1" ,rownames=FALSE, append = TRUE, varTypes=columnTypes)
Que peut-on faire d'autre pour écrire ce cadre de données dans la base de données en tant que table sans tronquer les chaînes de caractères?
Le seul succès que j'ai eu pousser des données de R à SQL était en construisant d'énormes déclarations de 'INSERT' avec suffisamment de chaînes sql. – lebelinoz
@ lebelinoz- pouvez-vous fournir la syntaxe ou un exemple pour les instructions INSERT? C'est nouveau pour moi et ça vaut le coup d'essayer. Merci. – Curious
Je vais donner comme une réponse ci-dessous, mais je ne suis pas sûr si c'est ce dont vous avez besoin. – lebelinoz