Bulk Transfers: Some guidelines

Bulk transfers are a common way of importing large amounts of data into, or exporting large amounts of data out of, SQL Server databases.  SQL Server supports bulk transfers run from an operating system command line or the SQL Server command processor. When performing bulk transfers, you must consider the implications regarding the impact on server performance, file sizes (especially for transaction log file), and data access.

Click here to read full article on SSWUG.org


Understanding Triggers

A trigger is a specialized stored procedure that activates (executes) in response to an event. There are two basic trigger types, ie data manipulation language (DML) trigger and data definition language (DDL) trigger, based on the type of event that causes them to fire. For example, a data manipulation language (DML) trigger fires in response to INSERT, UPDATE, or DELETE events on a specific table whereas a data definition language (DDL) trigger fires in response to a data definition event, such as creating or dropping an object.

DDL triggers can have a scope of a database or the server. DDL triggers were introduced as a new feature with SQL Server 2005. The scope of a DML trigger is a table. Earlier versions of SQL Server support only DML triggers.

Click here to read full article at SSWUG.org

Possible ways to secure SSIS Packages

SQL Server Integration Services (SSIS) security is based around several layers that provide a rich and flexible security environment. These layers of security include the use of digital signature, package properties, SQL Server database roles and operating system permissions.

Checkout my article here, in which I gave an overview of SQL Server Integration Services security, and explained these layers that enable us to assure our SSIS packages security.

This article is published on SSWUG.org.

Back to basics: Transact-SQL programming fundamentals – (Part 2)

In the first of this three-part series, you will learned how to use scripts and batches, and basics of T-SQL variables.

Checkout the part-2 of this article series here, you will learn about Transact-SQL control-of-flow language, including BEGIN…END, IF…ELSE, CATCH, WHILE, BREAK, CONTINUE, RETURN, and WAITFOR.

This article is published on SSWUG.org.

Back to basics: Transact-SQL programming fundamentals – (Part 1)

SQL Server users use Transact-SQL programming to create sets of statements for ad-hoc execution. The aim of the Transact-SQL programming is to carry out its transformation objectives by using: Command statements, Variables, and Control-of-flow statements. In this context, a command statement is any executable statement. This includes Transact-SQL commands, stored procedures and functions. Stored procedures and functions are both command statements and contain command statements. Variables provide temporary storage. You can define local variables and global variables. As compared to global variables, local variables have a more limited scope (availability). Each variable is defined with a data type to specify the type of data it can store. Control-of-flow statements, as the name implies, control program execution. Use control flow statements to manage how your statements execute, such as deciding which statements are executed based on values and conditions (if this is true, then do that) current. You can also create loops, which are statements that are executed repeatedly.

Checkout the part-1 of this three part article series here, in which you will learn how to use scripts and batches, and basics of Transact-SQL variables.

This article is published on SSWUG.org.

Planning for Recovery

A database server is generally a mission critical component. Having a recovery plan is essential to ensure the business can continue to function in case of hardware failure, natural disaster, or other catastrophe.

A backup server or a standby server (using Database Mirroring, AlwaysOn Failover Cluster Instances, AlwaysOn Failover Groups or Log Shipping technologies) is an option, but not always practical or possible due to the costs of hardware and associated software. Without some kind of a standby, the key to recovery from a failure is to get the database server back up and running as soon as possible with the least possible loss of data.

Checkout my article here, in which I discussed about recovery procedures for a catastrophic failure. I also talked about how to view and manage database its file states. Finally, I talked about how to troubleshoot and resolve disk space issues with tempdb, and how to move tempdb.

This article is published on SSWUG.org.

Understanding SSIS Package Configurations

Managing changes to environment dependent variables is common and critical in any ETL application, especially during deployment of SSIS packages. This is because they need to be modified appropriately to ensure smooth deployment of ETL application. SQL Server Integration Services (SSIS) provides package configurations that help you to manage such configuration during deployment of the packages.

Checkout my article here, in which I discussed about SSIS package configurations, and the types of SSIS package configurations. In this article, I also talked about property expression, and how to create SSIS package configuration files.

This article is published on SSWUG.org.

Understanding SQL Server Full-text Indexing – (Part 1)

SQL Server allows applications and users to execute full- text search queries against character based data in SQL Server tables. Full-text search is applicable in wide-range of business scenarios. You use full-text search to create queries that search for a word or phrase in a column. You can use full-text search to search a one or more columns for a word or phrase, or words in close proximity to each other, or multiple inflections and tenses of a word (for example: work, works, working).

Full-text search supports a user-friendly interface for data search. Full-text search stores information about words and the row in which the word is found in a full-text search index. A full-text index is a special type of token-based functional index that is built and maintained by the Full-Text Engine for SQL Server. The process of creating full-text index differs from other types of indexes. Instead of the construction of the B-tree structure based on a value stored in a particular row, a full-text index builds an inverted, staked, compressed index structure based on individual tokens from the text being indexed. You can group multiple full-indexes in a single full-text search catalog.

Checkout the part-1 of this two part article series here, in which I discussed about full-text indexing feature, how to configure an SQL Server instance to support full-text search, and how to create full-text index using SQL Server Management Studio.

This article is published on SSWUG.org.

Designing and Implementing Online Analytical Processing (OLAP) Architecture – (Part 2)

This is the two part article series on designing and implementing online analytical processing (OLAP) architecture. In the part-1 of this article series, you learned OLAP database design, options for data warehouse schema design, and key considerations for designing relational data warehouse schema for OLAP applications.

Checkout the part-2 of this article series here, in which I discussed the key considerations for designing facts and dimensions for your OLAP solution. Then, I discussed the guidelines for designing time dimension table. Finally, I discussed about changing dimensions.

This article is published on SSWUG.org.