Is the intent of Microsoft to enforce a vertical presentation of the SSIS Control Flow, Data Flow etc? I like to work down and to the right and I am having problems with the connectors (precedent) or in DTS 2000 world Success or On Success implied. Is there away to connect from the lower center anchor point to the side of the next object in the flow? For some reason, I can't get a similiar look to DTS 2000 environment (going from the bottom middle of the object to the side anchor pint (small box) symbol to the left. It wants to anchor on the bottom right, left, or middle, if going horizontally. I must be missing something, here??
I have 3 'separate' but related processes that I am developing in SSIS. Each process shares a few global variables and connection objects. None of the processes depend on inputs or outputs from the other processes. However, there is a sequence order in which they are exectuted.
Should I develop these three process in the same package or 3 separate packages in the same solution?
From the point of view of sharing the same variables and connection objects, maybe just one package? If so, would it be advise to use the toolkit's 'Sequence Container' to ensure the order in which the 3 processes are run? I noticed that 'global variables' are limited to the scope of individual packages so it would appear that a variable can't be shared between packages in the same solution? I was also thinking that in terms of configuration settings, there might be an advantage of keeping everything in the same package. The only disadvantage I can think of in relation to keeping everything in the same package is that the design layout might look a bit cluttered.
I'm tending to think one package here but would welcome comments and suggestions from those that have experience of similar design scenerios.
Hi, I am used to using Access but I need to learn SQL for larger web sites. I normally build the database in Access visually, but how do you do this with SQL? I just installed SQL developer and I can't find the area that builds the database.
Hi, I m new to sql server... I want to know the difference b/w unicode class and character class.. Pls help... That is difference b/w varchar and nvarchar
I've a number of SQL DBs that are managed by a php browser front end. These were developed in php/html to a SQL 2000 DB.
The DB and tables have been recreated in SQL 2005, permissions are that of the owner (SA) and the php code has been adjusted accordingly. Although the reading of the data is okay, I cannot update nor insert data from the php script through to the SQL 2005 DB whereas it works perfectly fine through the same php script and SQL 2000.
Obviously, there's something I'm not seeing??? There are no noticable messages and the last transaction does show up in the php display.... closing the portal then reopening, the record is "gone" and the SQL 2005 DB remains untouched.
Hi, I am a DB2 DBA and plan to learn SQL Server for professional reasons. But I am not able to find the material to begin with. So I would be greatful if you guys can send me links to start with the architecture and other basics of SQL server. I just want to accquire additional skills so that it can help me in the future.
I am not sure is this the right forum to get solution to my question.
From where i can get sysbase basics. I am posting this query in this forum coz this forum and gurus in this forum had helped me in lot critical situtions.
I've recently gotten into the administration side of SQL and am muddling my way through it as best I can. We have a DB server with three or four databases on it. Maintenance routines do a full backup of each one nightly and weekly and put all sets into one backup (.bak) file.
I've never had to restore them, but I thought I'd put myself through a test run since this is unexplored territory for me and I would prefer not to have to learn in an emergency.
A scenario I can foresee is where I'd have to restore just one table, perhaps to a new location (i.e. not overwrite the live db, just bring up a copy of part of it elsewhere so I can do a data dump from some old data). But when I go to 'restore database' or 'restore file/filegroups' and select the file, it seems to really want to restore the full backup directly over top of the existing database. If I try to restore it to a new, non-existent database, I get an error about how 'logical file master is not a part of database 'new-backup'), and if I try to restore it to a new db that I've created, I get an error about how the databases don't match.
It seems to me that my problem is a philosophical one - perhaps I don't understand the nature of backups, but I feel like what I'm trying to do is pretty simple. I want to take the full backup of database A and restore it, in part (or in full if I have to) to new database B. What do I need to do to accomplish this?
Thanks for indulging me - this must be brain-dead stuff for most of you!
Hey everyone, sorry for the lame questions, but: 1) I have a transactional replication service set up. However, whenever we select a new table or column within a table to replication to the subscribers, the changes never seem to get picked up unless we make an actual change within some of the other data. Any idea why this is? Even after I've reinitialized snapshots, the new changes don't want to proprogate to teh subscribers until data is actually changed. 2) where do I need to go to manually stop and restart a a distribution agent to force these changes to be proprogated without having to change any data within the tables? Thanks
I've setup my stored procedure, but now what? I want to display the information (only one record it will return) on the page / NOT using a datagrid or list, just simple.....I guess using an asp:label????? Could someone tell me what I need to do!!!
Also, are there any proper resources out there that just show you right out of the box howto insert / update / delete with sp's?, show / view, just proper simple source code?
THANKS!
my code: // Creating the database connection SqlConnection objConn = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["MM_CONNECTION_STRING_conn_main"]);
// Creating the stored procedure 4 the webpage // Instantiate a Sql Command SqlCommand webpage_view = new SqlCommand("stpr_webpage_view", objConn); // Declare that the T-SQL statement that will be executed is a stored procedure // Use a CommandType.Text to execute a T-SQL Query webpage_view.CommandType = CommandType.StoredProcedure; SqlParameter webpage_id_parm = webpage_view.Parameters.Add("@webpage_id", SqlDbType.Int); webpage_id_parm.Value = "1"; // Create a SqlDataAdapter to manage the connection and retrieve the data SqlDataAdapter da_1 = new SqlDataAdapter(); // Instantiate a Dataset that will hold the data retrieved from the database using the select command DataSet ds_webpage = new DataSet(); da_1.SelectCommand = webpage_view; // Retrieve the data into the dataset using the SqlDataAdapter.Fill command da_1.Fill( ds_webpage, "webpage_title" ); DataView dv2 = ds_webpage.Tables[0].DefaultView; if ( !this.IsPostBack ) { this.DataBind ( ); }
Im trying to justify to people in a meeting why we have to break down some large financial instrument tables in a new database design we are implementing.
They have currently broken the tables down into instruments1 & instruments2, containing approx 300 & 150 columns respectively (further columns will be added!). then they have a view that joins virtually all of these columns. I've asked for the tables to be broken down into more logical groups. they are saying that this will cost more overhead as their views will span more tables. i also complained about the width of the rows, but they claimed that sql 2005 will not have a problem as only 1/3 of the row will have any data at one point so will not cause an overhead. can someone give me some definate points on this relating to 2005 as I am fairly new to it.
can someone help me with the basic points why they should be split into more logical groups.
they are also intending on adding millions of records a year to this table and partioning it will different filegroups. Should you place the indexes for tables on different filegroups as well?
I'm a bit new to administering a SQL Server and this seems like a pretty basic question, but I'm not sure how to phrase it for the searches. So I apologize for seeking an indulgence...
I have SQL Server 2005 Standard edition running on a server exposed to the Internet. A handful of clients have to connect to it via TCP/IP using SQL Server Studio and ODBC links. But my windows logs are chok-full of failure audits of what I presume to be your garden variety crackers trying default passwords -- several times a minute.
What's the best solution to this, and how would I go about implementing it? Restrict TCP/IP access to certain IP ranges? Is there a 'max login attempts' somewhere? The server uses SQL authentication (not windows) if that makes a difference.
I am having no end of trouble with transactions in the package which i am building. I now just want to go back to basics and see if someone can tell me where i should set specific transaction options.
Firstly, my package runs a for each loop which loops through a directory of directories. In each of the sub directories there are 2 files. The first steps in the loop are to check if a folder has been processed previously, if so then it moves it to a specified directory. The reason that this is done first is that i cannot move the directory whilst it is being read in the foreach loop, so i pass the path to the next iteration of the loop. There is another file system move directory task outwith the foreach loop to deal with the last directory.
Once this has been done, i parse the file name of the xls file within the directory to get a serial number which is assigned to a variable.
The next step is where i envisage that the transactions should be implemented: I have a sequence container which contains 2 data flow tasks to be run in parallel. each of these reads data from a seperate work sheet in the xls file. and writes it to a database table. Each dataflow task consists of an excel source task, derived column task, look up task (used to derive an ID from the serial number stored in the variable), and an oledb destination.
Upon completion, if the sequence container fails i want to set the destination folder path to the qurantine location. If it succeeds i want to copy the csv file contained in the same directory to a seperate location and then set the out put folder to the archive location.
What i need to know is where do i set the transaction option if i want to roll back the data that has been inserted into the database if either data flow task fails?
Please somebody help, as this is not working at all.
We have an large SQL database being accessed by a C# application. Each hit on the database opens a connection then closes it when done. We are currently experiencing errors when more than 20 users access the database at one time. One of the things I am wondering is if we are using connection pooling. From BOL I am lead to believe connection pooling is off by default. Can I turn on connection pooling as a default in SQL Server or do I pass 'pooling=true' as a parameter on each connection string?
I'm trying to do something very basic here but I'm totally new to MS SQL Server Manager and MS SQL in general. I'm using the Database Designer in MS SQL Server Manager. I created two tables with the following properties: Schedule (ScheduleID as UniqueIdentifier PK, Time as dateTime) Course (CourseID as UniqueIdentifier PK, Name as VarChar(50)) I create a relationship by dragging the PK from the first table over to the second and I link on ScheduleID to CourseID columns (I'm not certain what type of relationship is created here N:N?). It appears to work, I can do a Select * and join the two tables to get a joined query. The problem starts when I try to populate the tables: a course will have a schedule. I can't seem to get the rows to populate across both tables. I try to select the pk from the first table and insert it into the second but it complians about it not being a uniqueidentifier. I know this is very basic but I can't seem to find this very basic tutorial anywhere. I come from the Oracle world of doing DB's so if you have some examples that relate across that would be great or better yet if you can point me to a good reference for doing M$ DB stuff that would be great. Thanks.
I am writing a program where I will be calculating some values that need to be sent to an SQL Database row by row. I am new to SQL Database programming and I was wondering what I need to include in my program as far as declarations, and data adapter connections in order to accomplish this. Or is it enough to already be connected to my database via a manual data connection? I also need to know some of the basic commands for inserting a new row, and adding data under existing columns, prior to moving on to the next row and repeating the process. If you can point me to a basic example that demonstrates this, including how to properly close out my database, I would appreciate it. If you know of a good VB2008 SQL Database book that covers all the basic & some advanced SQL Database programming, I would be interested in that as well. For Example: Row# Name CalcA CalcB CalcC CalcD 1 ? ? ? ? ? 2 ? ? ? ? ? Etc€¦ Thanks. Techno Visual Studio Express 2008 user
I am using the script below to update a DB2 table and it successfully executes. However, the database doesn't update. Can anyone help me?
Public Class ScriptMain Inherits UserComponent
Dim connMgr As IDTSConnectionManager90 Dim conn As OdbcConnection Dim cmdSelect As OdbcCommand Dim cmdUpdate As OdbcCommand Dim cmdInsert As OdbcCommand Dim paramInsert As OdbcParameter Dim paramSelect As OdbcParameter Dim paramUpdate As OdbcParameter Dim ds As DataSet
Public Overrides Sub AcquireConnections(ByVal Transaction As Object) connMgr = Me.Connections.Connection conn = CType(connMgr.AcquireConnection(Nothing), OdbcConnection) End Sub
Public Overrides Sub PreExecute() cmdUpdate = New OdbcCommand("UPDATE WEBLIB.A2JBMSKHF SET A2DESC = @FullName WHERE Rtrim(A2JOBN) = @FileNameNum", conn) paramUpdate = New OdbcParameter("@FullName", OdbcType.VarChar) cmdUpdate.Parameters.Add(paramUpdate) paramUpdate = New OdbcParameter("@FileNameNum", OdbcType.VarChar) cmdUpdate.Parameters.Add(paramUpdate) End Sub
Public Overrides Sub BorrowerRecords_ProcessInputRow(ByVal Row As BorrowerRecordsBuffer) Try With cmdUpdate .Parameters("@FileNameNum").Value = Row.FileNameNum.Trim.ToString() .Parameters("@FullName").Value = Row.FullName.Trim.ToString() .ExecuteNonQuery() End With Catch ex As Exception ex.ToString() End Try End Sub
Public Overrides Sub ReleaseConnections() connMgr.ReleaseConnection(conn) End Sub End Class
This may be a question for multiple forums but here it goes.
I have a large SSIS package that works great in Visula Studio (BIDS) and in SQL Server under MSDB folder. The properties are all set to save with a sql server authentication package password and that works great too. The problem occurs when I try to use this package in a schedule. I get an error about an OLB DB not working. I've tried many things and figured out that all the OLB DBs do not work in this package but only error as a STEP in a schedule.
They all reference a Client Access ODBC connection - which is a connection to an AS400 IBM machine. The actual error is pasted below, where I guess the root of the problem is a incorrect password. The password is fine and I have proven that by running the package successfully under the MSDB folder of Stored Packages under Integration Service.
Message Executed as user: CNBSQL2SYSTEM. ...ion 9.00.3042.00 for 32-bit Copyright (C) Microsoft Corp 1984-2005. All rights reserved. Started: 3:29:35 PM Error: 2007-11-22 15:29:38.13 Code: 0xC0202009 Source: HTEIMPORT2 Connection manager "Client Access ODBC Driver (32-bit) 7" Description: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E4D. An OLE DB record is available. Source: "Microsoft OLE DB Provider for ODBC Drivers" Hresult: 0x80040E4D Description: "[IBM][Client Access Express ODBC Driver (32-bit)]Communication link failure. comm rc=8002 - CWBSY0002 - Password for user COGNOS on system 172.16.1.2 is not correct". End Error Error: 2007-11-22 15:29:38.13 Code: 0xC020801C Source: Airport PR010ap v2 OLE DB Source 25 [60] Description: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. The AcquireConnection method call to the connection manager "Client Access ODBC Driver (32-... The package execution fa... The step failed.
Please provide any insight if you can - I am still new at SQL2005.
This is less of a specific question and more of a request for for some advice as to possibilities and directions. Here's the current situation. My company is using SAP for its purchasing, inventory, etc. This system is pretty much opaque to me - it's managed by another group within the company, and changes to it go through a complicated approval process. At the same time, the majority of our users, internal and external, are looking at this same data through a more accesible and more user friendly collection of web applications - done in classic ASP, up through ASP.NET 1.1 and 2 - and stored in an assortment of MS-SQL 2000 databases. Data is exchanged between SQL and SAP via DTS packages, some nightly, some run more frequently.
There's some issues here - data is never quite synchronized between the two sides, sometimes the same data must be updated twice, leading to possible data integrity issues, etc. Given that, we're going to be moving to SQL 2005 within the next year or so. From everything I've understood, within that context, there are vastly better ways of dealing with out situation than the way we're currently doing it.
So what I'm looking for is just a general impression of what can be done, with SSIS and SAP. Any approaches that might prove more fruitful, an y pitfalls to watch out for, that sort of thing.
I have a package that uses configurations to override package settings based on what environment the package runs in. The package's configuration entries begins with an initial XML config entry that overrides the package's connection manager to a SQL database that holds the remaining configs in a table. Subsequent config entries then fetch their settings from the table. This package is run from a SQL job.
This all works fine in dev. When I moved everything into prod the packages are not getting configured and are using their values stored in the DTSX files. I've triple checked the XML config file, the tables with the configs, and the packages. There are no error messages. I've added some debuging steps to the package to verify that the configs in the table are not getting into the package.
I've also tried manually changing the configs in the table where the package is set to look if the initial XML config fails to adjust the config database location. The package still fails to see any configs from the table.
What could be different between dev and prod that would produce this situation? Both dev and prod have identical copies of the package and the job and are currently pointed to the same configurations database.
By the way, the other connections in the package work for both source selects and destination inserts. Only the configurations are failing, and again there is no error message.
I am using a simple Data Flow within a Squence Controller and have added a Event Handler for OnPostExecute which contains a simple insert to a table, but this is not working. My package gets successfully execute but data is not getting inserted in the table used in Event Handler. I have also tried OnError, OnPackageFailer etc... but no results. Please guide.
I'm still fairly new to some of SSIS's enhanced funtionalities, one of them being Event handlers. I have tried creating a simple package, that simply contains a SQL Execute task that basically creates a simple table. Now i have then added a OnPostExecute even handler as a test which basically runs a script task that simply shows a msgbox. I have gone to execute the package, however after the completion of the SQL Execute task, nothing happens, the even handler doesnt get fired for some reason, i switch to the even handler page and the script task has not been executed. It is like this for every event handler i have tried, even the OnError event. Could this be a problem with my installation of SSIS or have i done something wrong?
Any help would be greatly appreciated as i have done SSIS training and to create an event handler was never this hard!
I've been building a prototype using Webservices (coded in .NET) and SSIS to move data from our order/fulfillment system to our accounting system. I have struggled a bit with SSIS's WebService Tasks; but, finally have a package that runs locally that calls a web service and loads the data into SQL Server. I tried to move this to our server, I modify the HTTPConnection Parameter to the Product WS URL and the web service task fails with an "Unable to Connect to Server" error.
So, I decided to try running the production WS in my local (development) SSIS. I change the HTTP Connection URL, save, rebuild and run. The job runs successfully - against my LOCAL Web Service. It did not recognize the change or is somehow cached.
How do I get it to run against my Production Web Service???
how to evaluate working day through script component in SSIS
I have a data source. I need to verify if the date belongs to working day, if it does belongs to holiday or weekend ,then I need to send that row to the out put table. I think the only way I can verify this working day issue through script component. Can any one give me some idea/thoughts?
I have few tables that I need to export to an MS Access database each day to send off to the customer. In these tables I have a few columns that I need to strip all the HTML out of before they are put into Access since Access does not display the formatting correctly. Some of the fields are varchar and some are text, but all of the fields that are varchar are over 255 in size, so this forces me to use Access' Memo type for both.
In SQL 2000 I used the ActiveX Script to modify these fields, stripping out the HTML, and it gave me no complaints. In SQL 2005, I am adding a Script Component into the Data Flow before the Destination and adding the script in there. So far so good. The problem arises when I try to retrieve and update the data in these fields because they are treated as BLOB data. I believe what I need to do is to retrieve the Byte array from the row using the GetBlobData(), then convert that to a string, strip out the HTML, convert back to a Byte array, then clear the original value using the ResetBlobData(), and then update the field using the AddBlobData. I think?
I am not even sure that my code below is converting the byte array into a string correctly. If I throw a Messagebox in there to see what it has for the string, it just gives me the first character in the field. But even ignoring that, the package will not execute and I am stumped.
The error I now get is: Array cannot be null. Parameter name: bytes
''----------------------------------------------------- Public Overrides Sub Input0_ProcessInputRow(ByVal Row As Input0Buffer)
Dim b As Byte() If (Row.ProjectDescription.Length > 0) And (Not (Row.ProjectDescription_IsNull)) Then b = Row.ProjectDescription.GetBlobData(0, CInt(Row.ProjectDescription.Length)) End If
Dim str As String Dim enc As New System.Text.ASCIIEncoding() str = enc.GetString(b) str = RemoveHTML(str)
b = enc.GetBytes(str)
Row.ProjectDescription.ResetBlobData()
If b.Length > 0 Then Row.ProjectDescription.AddBlobData(b) End If
End Sub ''-----------------------------------------------------
What I am trying to achieve currently with SSIS is to view the content in one folder for example 'New' and if there is files in this then move it to 'Archived'.
Any nice liinks or tutorial or general advice you guys could give me ?
I have a package that inserts data from a sql server table to an oracle table. I use a dataflow task to do the loading.
The weird thing is, if the package fails during execution, the transaction does not perform a rollback and the inserted data is committed.
The dataflow component has its TransactionOption set to Supported (this has always been the case for our sql to sql packages). However, now that I have a sql to oracle package, it won't work anymore.. also, setting the TransactionOption of the dataflow component to Required causes the whole package to fail.
I have a blob which is essentially an email and I need to replace all carriage returns in the blob with a special character ("€°"). But it does not work. Please advice.
Dim intBlobLen As Integer = Convert.ToInt32(Row.body.Length) Dim intFinish As Integer = intBlobLen - 1
Dim bytBlob(intFinish) As Byte bytBlob = Row.body.GetBlobData(0, intFinish)
Dim strBlob As String = System.Text.Encoding.Unicode.GetString(bytBlob) strBlob = Replace (strBlob,"/n","€°")
If strBlob.Length > 0 Then Row.body.ResetBlobData() Row.body.AddBlobData(System.Text.Encoding.Unicode.GetBytes(strBlob)) End If