sqlcmd truncates long line query. How to run query with line length more than 5000?

StackOverflow https://stackoverflow.com/questions/19769075

  •  03-07-2022
  •  | 
  •  

Question

I have datatable with large number of columns. When I edit the datatable in management studio, i can generate change script. But when i run the script in sqlcmd, it fails on the insert command. The command has list of all columns in single line, and the length of the line is 5417. So, sqlcmd truncates the line on 5000 chars, and the query fails. How can I avoid the 5000 chars limitation?

Steps to reproduce the issue: 1) run sqlcmd; 2) paste the following lines:

INSERT INTO Tmp_Table1 (ExampleColumnNo1, ExampleColumnNo2, ExampleColumnNo3, ExampleColumnNo4, ExampleColumnNo5, ExampleColumnNo6, ExampleColumnNo7, ExampleColumnNo8, ExampleColumnNo9, ExampleColumnNo10, ExampleColumnNo11, ExampleColumnNo12, ExampleColumnNo13, ExampleColumnNo14, ExampleColumnNo15, ExampleColumnNo16, ExampleColumnNo17, ExampleColumnNo18, ExampleColumnNo19, ExampleColumnNo20, ExampleColumnNo21, ExampleColumnNo22, ExampleColumnNo23, ExampleColumnNo24, ExampleColumnNo25, ExampleColumnNo26, ExampleColumnNo27, ExampleColumnNo28, ExampleColumnNo29, ExampleColumnNo30, ExampleColumnNo31, ExampleColumnNo32, ExampleColumnNo33, ExampleColumnNo34, ExampleColumnNo35, ExampleColumnNo36, ExampleColumnNo37, ExampleColumnNo38, ExampleColumnNo39, ExampleColumnNo40, ExampleColumnNo41, ExampleColumnNo42, ExampleColumnNo43, ExampleColumnNo44, ExampleColumnNo45, ExampleColumnNo46, ExampleColumnNo47, ExampleColumnNo48, ExampleColumnNo49, ExampleColumnNo50, ExampleColumnNo51, ExampleColumnNo52, ExampleColumnNo53, ExampleColumnNo54, ExampleColumnNo55, ExampleColumnNo56, ExampleColumnNo57, ExampleColumnNo58, ExampleColumnNo59, ExampleColumnNo60, ExampleColumnNo61, ExampleColumnNo62, ExampleColumnNo63, ExampleColumnNo64, ExampleColumnNo65, ExampleColumnNo66, ExampleColumnNo67, ExampleColumnNo68, ExampleColumnNo69, ExampleColumnNo70, ExampleColumnNo71, ExampleColumnNo72, ExampleColumnNo73, ExampleColumnNo74, ExampleColumnNo75, ExampleColumnNo76, ExampleColumnNo77, ExampleColumnNo78, ExampleColumnNo79, ExampleColumnNo80, ExampleColumnNo81, ExampleColumnNo82, ExampleColumnNo83, ExampleColumnNo84, ExampleColumnNo85, ExampleColumnNo86, ExampleColumnNo87, ExampleColumnNo88, ExampleColumnNo89, ExampleColumnNo90, ExampleColumnNo91, ExampleColumnNo92, ExampleColumnNo93, ExampleColumnNo94, ExampleColumnNo95, ExampleColumnNo96, ExampleColumnNo97, ExampleColumnNo98, ExampleColumnNo99, ExampleColumnNo100, ExampleColumnNo101, ExampleColumnNo102, ExampleColumnNo103, ExampleColumnNo104, ExampleColumnNo105, ExampleColumnNo106, ExampleColumnNo107, ExampleColumnNo108, ExampleColumnNo109, ExampleColumnNo110, ExampleColumnNo111, ExampleColumnNo112, ExampleColumnNo113, ExampleColumnNo114, ExampleColumnNo115, ExampleColumnNo116, ExampleColumnNo117, ExampleColumnNo118, ExampleColumnNo119, ExampleColumnNo120, ExampleColumnNo121, ExampleColumnNo122, ExampleColumnNo123, ExampleColumnNo124, ExampleColumnNo125, ExampleColumnNo126, ExampleColumnNo127, ExampleColumnNo128, ExampleColumnNo129, ExampleColumnNo130, ExampleColumnNo131, ExampleColumnNo132, ExampleColumnNo133, ExampleColumnNo134, ExampleColumnNo135, ExampleColumnNo136, ExampleColumnNo137, ExampleColumnNo138, ExampleColumnNo139, ExampleColumnNo140, ExampleColumnNo141, ExampleColumnNo142, ExampleColumnNo143, ExampleColumnNo144, ExampleColumnNo145, ExampleColumnNo146, ExampleColumnNo147, ExampleColumnNo148, ExampleColumnNo149, ExampleColumnNo150, ExampleColumnNo151, ExampleColumnNo152, ExampleColumnNo153, ExampleColumnNo154, ExampleColumnNo155, ExampleColumnNo156, ExampleColumnNo157, ExampleColumnNo158, ExampleColumnNo159, ExampleColumnNo160, ExampleColumnNo161, ExampleColumnNo162, ExampleColumnNo163, ExampleColumnNo164, ExampleColumnNo165, ExampleColumnNo166, ExampleColumnNo167, ExampleColumnNo168, ExampleColumnNo169, ExampleColumnNo170, ExampleColumnNo171, ExampleColumnNo172, ExampleColumnNo173, ExampleColumnNo174, ExampleColumnNo175, ExampleColumnNo176, ExampleColumnNo177, ExampleColumnNo178, ExampleColumnNo179, ExampleColumnNo180, ExampleColumnNo181, ExampleColumnNo182, ExampleColumnNo183, ExampleColumnNo184, ExampleColumnNo185, ExampleColumnNo186, ExampleColumnNo187, ExampleColumnNo188, ExampleColumnNo189, ExampleColumnNo190, ExampleColumnNo191, ExampleColumnNo192, ExampleColumnNo193, ExampleColumnNo194, ExampleColumnNo195, ExampleColumnNo196, ExampleColumnNo197, ExampleColumnNo198, ExampleColumnNo199, ExampleColumnNo200, ExampleColumnNo201, ExampleColumnNo202, ExampleColumnNo203, ExampleColumnNo204, ExampleColumnNo205, ExampleColumnNo206, ExampleColumnNo207, ExampleColumnNo208, ExampleColumnNo209, ExampleColumnNo210, ExampleColumnNo211, ExampleColumnNo212, ExampleColumnNo213, ExampleColumnNo214, ExampleColumnNo215, ExampleColumnNo216, ExampleColumnNo217, ExampleColumnNo218, ExampleColumnNo219, ExampleColumnNo220, ExampleColumnNo221, ExampleColumnNo222, ExampleColumnNo223, ExampleColumnNo224, ExampleColumnNo225, ExampleColumnNo226, ExampleColumnNo227, ExampleColumnNo228, ExampleColumnNo229, ExampleColumnNo230, ExampleColumnNo231, ExampleColumnNo232, ExampleColumnNo233, ExampleColumnNo234, ExampleColumnNo235, ExampleColumnNo236, ExampleColumnNo237, ExampleColumnNo238, ExampleColumnNo239, ExampleColumnNo240, ExampleColumnNo241, ExampleColumnNo242, ExampleColumnNo243, ExampleColumnNo244, ExampleColumnNo245, ExampleColumnNo246, ExampleColumnNo247, ExampleColumnNo248, ExampleColumnNo249, ExampleColumnNo250, ExampleColumnNo251, ExampleColumnNo252, ExampleColumnNo253, ExampleColumnNo254, ExampleColumnNo255, ExampleColumnNo256, ExampleColumnNo257, ExampleColumnNo258, ExampleColumnNo259, ExampleColumnNo260, ExampleColumnNo261, ExampleColumnNo262, ExampleColumnNo263, ExampleColumnNo264, ExampleColumnNo265, ExampleColumnNo266, ExampleColumnNo267, ExampleColumnNo268, ExampleColumnNo269, ExampleColumnNo270, ExampleColumnNo271, ExampleColumnNo272, ExampleColumnNo273, ExampleColumnNo274, ExampleColumnNo275, ExampleColumnNo276, ExampleColumnNo277, ExampleColumnNo278, ExampleColumnNo279, ExampleColumnNo280, ExampleColumnNo281, ExampleColumnNo282, ExampleColumnNo283, ExampleColumnNo284, ExampleColumnNo285, ExampleColumnNo286, ExampleColumnNo287, ExampleColumnNo288, ExampleColumnNo289, ExampleColumnNo290, ExampleColumnNo291, ExampleColumnNo292, ExampleColumnNo293, ExampleColumnNo294, ExampleColumnNo295, ExampleColumnNo296, ExampleColumnNo297, ExampleColumnNo298, ExampleColumnNo299, ExampleColumnNo300)
SELECT ExampleColumnNo1, ExampleColumnNo2, ExampleColumnNo3, ExampleColumnNo4, ExampleColumnNo5, ExampleColumnNo6, ExampleColumnNo7, ExampleColumnNo8, ExampleColumnNo9, ExampleColumnNo10, ExampleColumnNo11, ExampleColumnNo12, ExampleColumnNo13, ExampleColumnNo14, ExampleColumnNo15, ExampleColumnNo16, ExampleColumnNo17, ExampleColumnNo18, ExampleColumnNo19, ExampleColumnNo20, ExampleColumnNo21, ExampleColumnNo22, ExampleColumnNo23, ExampleColumnNo24, ExampleColumnNo25, ExampleColumnNo26, ExampleColumnNo27, ExampleColumnNo28, ExampleColumnNo29, ExampleColumnNo30, ExampleColumnNo31, ExampleColumnNo32, ExampleColumnNo33, ExampleColumnNo34, ExampleColumnNo35, ExampleColumnNo36, ExampleColumnNo37, ExampleColumnNo38, ExampleColumnNo39, ExampleColumnNo40, ExampleColumnNo41, ExampleColumnNo42, ExampleColumnNo43, ExampleColumnNo44, ExampleColumnNo45, ExampleColumnNo46, ExampleColumnNo47, ExampleColumnNo48, ExampleColumnNo49, ExampleColumnNo50, ExampleColumnNo51, ExampleColumnNo52, ExampleColumnNo53, ExampleColumnNo54, ExampleColumnNo55, ExampleColumnNo56, ExampleColumnNo57, ExampleColumnNo58, ExampleColumnNo59, ExampleColumnNo60, ExampleColumnNo61, ExampleColumnNo62, ExampleColumnNo63, ExampleColumnNo64, ExampleColumnNo65, ExampleColumnNo66, ExampleColumnNo67, ExampleColumnNo68, ExampleColumnNo69, ExampleColumnNo70, ExampleColumnNo71, ExampleColumnNo72, ExampleColumnNo73, ExampleColumnNo74, ExampleColumnNo75, ExampleColumnNo76, ExampleColumnNo77, ExampleColumnNo78, ExampleColumnNo79, ExampleColumnNo80, ExampleColumnNo81, ExampleColumnNo82, ExampleColumnNo83, ExampleColumnNo84, ExampleColumnNo85, ExampleColumnNo86, ExampleColumnNo87, ExampleColumnNo88, ExampleColumnNo89, ExampleColumnNo90, ExampleColumnNo91, ExampleColumnNo92, ExampleColumnNo93, ExampleColumnNo94, ExampleColumnNo95, ExampleColumnNo96, ExampleColumnNo97, ExampleColumnNo98, ExampleColumnNo99, ExampleColumnNo100, ExampleColumnNo101, ExampleColumnNo102, ExampleColumnNo103, ExampleColumnNo104, ExampleColumnNo105, ExampleColumnNo106, ExampleColumnNo107, ExampleColumnNo108, ExampleColumnNo109, ExampleColumnNo110, ExampleColumnNo111, ExampleColumnNo112, ExampleColumnNo113, ExampleColumnNo114, ExampleColumnNo115, ExampleColumnNo116, ExampleColumnNo117, ExampleColumnNo118, ExampleColumnNo119, ExampleColumnNo120, ExampleColumnNo121, ExampleColumnNo122, ExampleColumnNo123, ExampleColumnNo124, ExampleColumnNo125, ExampleColumnNo126, ExampleColumnNo127, ExampleColumnNo128, ExampleColumnNo129, ExampleColumnNo130, ExampleColumnNo131, ExampleColumnNo132, ExampleColumnNo133, ExampleColumnNo134, ExampleColumnNo135, ExampleColumnNo136, ExampleColumnNo137, ExampleColumnNo138, ExampleColumnNo139, ExampleColumnNo140, ExampleColumnNo141, ExampleColumnNo142, ExampleColumnNo143, ExampleColumnNo144, ExampleColumnNo145, ExampleColumnNo146, ExampleColumnNo147, ExampleColumnNo148, ExampleColumnNo149, ExampleColumnNo150, ExampleColumnNo151, ExampleColumnNo152, ExampleColumnNo153, ExampleColumnNo154, ExampleColumnNo155, ExampleColumnNo156, ExampleColumnNo157, ExampleColumnNo158, ExampleColumnNo159, ExampleColumnNo160, ExampleColumnNo161, ExampleColumnNo162, ExampleColumnNo163, ExampleColumnNo164, ExampleColumnNo165, ExampleColumnNo166, ExampleColumnNo167, ExampleColumnNo168, ExampleColumnNo169, ExampleColumnNo170, ExampleColumnNo171, ExampleColumnNo172, ExampleColumnNo173, ExampleColumnNo174, ExampleColumnNo175, ExampleColumnNo176, ExampleColumnNo177, ExampleColumnNo178, ExampleColumnNo179, ExampleColumnNo180, ExampleColumnNo181, ExampleColumnNo182, ExampleColumnNo183, ExampleColumnNo184, ExampleColumnNo185, ExampleColumnNo186, ExampleColumnNo187, ExampleColumnNo188, ExampleColumnNo189, ExampleColumnNo190, ExampleColumnNo191, ExampleColumnNo192, ExampleColumnNo193, ExampleColumnNo194, ExampleColumnNo195, ExampleColumnNo196, ExampleColumnNo197, ExampleColumnNo198, ExampleColumnNo199, ExampleColumnNo200, ExampleColumnNo201, ExampleColumnNo202, ExampleColumnNo203, ExampleColumnNo204, ExampleColumnNo205, ExampleColumnNo206, ExampleColumnNo207, ExampleColumnNo208, ExampleColumnNo209, ExampleColumnNo210, ExampleColumnNo211, ExampleColumnNo212, ExampleColumnNo213, ExampleColumnNo214, ExampleColumnNo215, ExampleColumnNo216, ExampleColumnNo217, ExampleColumnNo218, ExampleColumnNo219, ExampleColumnNo220, ExampleColumnNo221, ExampleColumnNo222, ExampleColumnNo223, ExampleColumnNo224, ExampleColumnNo225, ExampleColumnNo226, ExampleColumnNo227, ExampleColumnNo228, ExampleColumnNo229, ExampleColumnNo230, ExampleColumnNo231, ExampleColumnNo232, ExampleColumnNo233, ExampleColumnNo234, ExampleColumnNo235, ExampleColumnNo236, ExampleColumnNo237, ExampleColumnNo238, ExampleColumnNo239, ExampleColumnNo240, ExampleColumnNo241, ExampleColumnNo242, ExampleColumnNo243, ExampleColumnNo244, ExampleColumnNo245, ExampleColumnNo246, ExampleColumnNo247, ExampleColumnNo248, ExampleColumnNo249, ExampleColumnNo250, ExampleColumnNo251, ExampleColumnNo252, ExampleColumnNo253, ExampleColumnNo254, ExampleColumnNo255, ExampleColumnNo256, ExampleColumnNo257, ExampleColumnNo258, ExampleColumnNo259, ExampleColumnNo260, ExampleColumnNo261, ExampleColumnNo262, ExampleColumnNo263, ExampleColumnNo264, ExampleColumnNo265, ExampleColumnNo266, ExampleColumnNo267, ExampleColumnNo268, ExampleColumnNo269, ExampleColumnNo270, ExampleColumnNo271, ExampleColumnNo272, ExampleColumnNo273, ExampleColumnNo274, ExampleColumnNo275, ExampleColumnNo276, ExampleColumnNo277, ExampleColumnNo278, ExampleColumnNo279, ExampleColumnNo280, ExampleColumnNo281, ExampleColumnNo282, ExampleColumnNo283, ExampleColumnNo284, ExampleColumnNo285, ExampleColumnNo286, ExampleColumnNo287, ExampleColumnNo288, ExampleColumnNo289, ExampleColumnNo290, ExampleColumnNo291, ExampleColumnNo292, ExampleColumnNo293, ExampleColumnNo294, ExampleColumnNo295, ExampleColumnNo296, ExampleColumnNo297, ExampleColumnNo298, ExampleColumnNo299, ExampleColumnNo300 FROM dbo.dbc_Table1
Était-ce utile?

La solution

I have got this working by moving query into a file and feeding the tool with -i filename.sql parameters. Not ideal, but works.

Autres conseils

  1. I would first try editing the SQL script to simply add a return before (or after) the "VALUES" keyword. You can actually put any of the parts of the INSERT statement on different lines:

    INSERT INTO  
    TableName (Column1,  
    Column2)  
    VALUES (  
    N'some text',  
    55 )  
    
  2. Or, if SQLCMD doesn't care about line breaks but instead it cares about the actual SQL statement being executed, then assuming you are inserting all columns that are insertable (meaning: no IDENTITY or TIMESTAMP/ROWVERSION fields as you generally do not insert into IDENTITY and cannot insert into TIMESTAMP/ROWVERSION) and that the values in the VALUES clause are in the same order that SQL Server has them listed in (which I would assume would be the case if SSMS generated the INSERT statement), then you can remove the field list from the INSERT statement:

    INSERT INTO TableName VALUES (N'some text', 55)  
    

    This syntax is generally not preferred as any change in the table schema (i.e. add / remove columns) would break the INSERT statement, but for a one-time script it is fine.

  3. If that doesn't help, you can usually "continue" a string onto the next line by putting a back-slash "\" where you want the end of the line to be and making sure to continue on the next line starting in the first character position. For example:

    DECLARE @InsertTest TABLE (TextCol NVARCHAR(50), IntCol INT)
    
    INSERT INTO @InsertTest (TextCol, IntCol) VALUES (N'This is a looooooooooo\  
    ooooooooong string', 55)  
    
    SELECT * FROM @InsertTest
    
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top