MS Visual Basic OR MS Visual C# ??

  • Hi everyone,

    So for some time now I have been learning SSIS and I have worked on various tasks and created some projects on it without using Script Task.

    What I have learned so far is that to achieve what I am trying to do via SSIS built-in tasks, I can get much better results via Script Task & Script Component.

    So there are two Script Languages inside Script Task: Visual Basic & Visual C#.

    Which one should I start learning? Should I start learning both? Do I have to learn both or is one enough?

    Any guidance would be appreciated...

     

  • They are the same language. 🙂 Just different syntax.

    Joke aside, the main challenge is not learning the language as such, but .NET and .NET Framework, and that is the same for both. Still, C# is used a lot more, and it is designed more directly for object-oriented programming, so that is the language to for. Once you have learnt C#, understanding code in Visual Basic will not be a challenge.

    [font="Times New Roman"]Erland Sommarskog, SQL Server MVP, www.sommarskog.se[/font]

  • Erland Sommarskog wrote:

    They are the same language. 🙂 Just different syntax.

    Joke aside, the main challenge is not learning the language as such, but .NET and .NET Framework, and that is the same for both. Still, C# is used a lot more, and it is designed more directly for object-oriented programming, so that is the language to for. Once you have learnt C#, understanding code in Visual Basic will not be a challenge.

    Alright and what is the best way to start learning it? Are there any good tutorial videos or guide available online that are easy to understand and well-explained?

  • I guess what is the best way depends on your background and your personality. I picked up C# by reading a book "Inside Visual C#", which is likely to be out of date today. (The language has been evolving quite a bit.) But I already knew a few programming languages, including C and C++, and I was familiar with object-oriented concepts.

    If you have a less of experience, it may be better to attend a class, but that will obviously also be more expensive.

    It also depends on what you will use C# for - this language has a lot wider applications than just script tasks in SSIS.

     

    [font="Times New Roman"]Erland Sommarskog, SQL Server MVP, www.sommarskog.se[/font]

  • Erland Sommarskog wrote:

    I guess what is the best way depends on your background and your personality. I picked up C# by reading a book "Inside Visual C#", which is likely to be out of date today. (The language has been evolving quite a bit.) But I already knew a few programming languages, including C and C++, and I was familiar with object-oriented concepts.

    If you have a less of experience, it may be better to attend a class, but that will obviously also be more expensive.

    It also depends on what you will use C# for - this language has a lot wider applications than just script tasks in SSIS.

     

    For now my goal is to fix my SSIS projects which are not giving the desired result.

  • OK, to that end, learning C# is a huge overkill. C# is a general object-oriented programming language, and you probably do not need a write a lot of classes to do script tasks in SSIS. Then again, knowing C# is absolutely something you will have use for throughout your career. But I'm a little surprised that PowerShell is not available a language. PowerShell is also .NET, but it is a scripting language, and you don't need to bother that much with that object-oriented stuff.

    I should add that my expertise is SQL Server - but I don't know SSIS, never had the use for it. I know C# enough so that I can write simple programs of maybe 100 lines of code, but I can't say I'm fluent in it.

     

    [font="Times New Roman"]Erland Sommarskog, SQL Server MVP, www.sommarskog.se[/font]

  • Perhaps post a few specific questions in the SSIS forum. You need only a rudimentary knowledge of C# to achieve most of the things you'll need to use a Script Task for and you'll pick things up as you go along, once you have the basic syntax nailed.

    The absence of evidence is not evidence of absence
    - Martin Rees
    The absence of consumable DDL, sample data and desired results is, however, evidence of the absence of my response
    - Phil Parkin

  • This was removed by the editor as SPAM

  • Jobs90312 wrote:

    For now my goal is to fix my SSIS projects which are not giving the desired result.

    I have no quantitative numbers on what I'm about to say but... I've found that most people that take to VB or C# or whatever (the list is too long to post) do so because they don't know how to do it in SQL.    A lot of developers poo-poo SQL but it IS the language of data and it has been, is, and will continue to be in great demand and a huge career asset to folks that take the time to learn it beyond things like 3 table joins especially when it comes to projects that people end up using SSIS for.

    I actually avoid SSIS in favor of doing it all in T-SQL.  The only thing that I actually use SSIS for is simple flow control and the occasional need to run stuff in a parallel fashion although that also is seriously overrated IMHO.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • This was removed by the editor as SPAM

  • Ok and what about Python? I heard somewhere that it can also be used as an alternative of SSIS tasks?

  • Jobs90312 wrote:

    Ok and what about Python? I heard somewhere that it can also be used as an alternative of SSIS tasks?

    Yes it can... so can C#, Visual Basic, PowerShell, a decent DOS batch file, and a bunch of other methods.  In fact, in theory, you can replace all of SQL Server with those things.

    My question would be...

     

    WHY?  What is it that you're trying to do?

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Jeff Moden wrote:

    Jobs90312 wrote:

    Ok and what about Python? I heard somewhere that it can also be used as an alternative of SSIS tasks?

    Yes it can... so can C#, Visual Basic, PowerShell, a decent DOS batch file, and a bunch of other methods.  In fact, in theory, you can replace all of SQL Server with those things.

    My question would be...

    WHY?  What is it that you're trying to do?

     

    I am trying to Import some XML files data into SQL tables. I tried doing this with ZappySYS XML Source and I was successful but there were license issues so I cannot deploy it to server.

  • Jobs90312 wrote:

    Jeff Moden wrote:

    Jobs90312 wrote:

    Ok and what about Python? I heard somewhere that it can also be used as an alternative of SSIS tasks?

    Yes it can... so can C#, Visual Basic, PowerShell, a decent DOS batch file, and a bunch of other methods.  In fact, in theory, you can replace all of SQL Server with those things.

    My question would be...

    WHY?  What is it that you're trying to do?

    I am trying to Import some XML files data into SQL tables. I tried doing this with ZappySYS XML Source and I was successful but there were license issues so I cannot deploy it to server.

    Righto. Have you considered creating a post like this?

    "I am trying to import some XML files into SQL Server tables, but I am not sure how best to do it. I have attached a file containing some sample data. Can anyone suggest a solution, please?"

    The absence of evidence is not evidence of absence
    - Martin Rees
    The absence of consumable DDL, sample data and desired results is, however, evidence of the absence of my response
    - Phil Parkin

  • Jobs90312 wrote:

    Jeff Moden wrote:

    Jobs90312 wrote:

    Ok and what about Python? I heard somewhere that it can also be used as an alternative of SSIS tasks?

    Yes it can... so can C#, Visual Basic, PowerShell, a decent DOS batch file, and a bunch of other methods.  In fact, in theory, you can replace all of SQL Server with those things.

    My question would be...

    WHY?  What is it that you're trying to do?

    I am trying to Import some XML files data into SQL tables. I tried doing this with ZappySYS XML Source and I was successful but there were license issues so I cannot deploy it to server.

    Righto. Have you considered creating a post like this?

    "I am trying to import some XML files into SQL Server tables, but I am not sure how best to do it. I have attached a file containing some sample data. Can anyone suggest a solution, please?"

    The absence of evidence is not evidence of absence
    - Martin Rees
    The absence of consumable DDL, sample data and desired results is, however, evidence of the absence of my response
    - Phil Parkin

Viewing 15 posts - 1 through 15 (of 18 total)

You must be logged in to reply to this topic. Login to reply