* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Importing and Exporting Data
Survey
Document related concepts
Transcript
Importing and Exporting Data Importing and Exporting Data Exam 70-432 1 / 30 Importing and Exporting Data Bulk Copy Program (BCP) If you are exporting data using BCP, the account that BCP is running under needs only SELECT permissions on the table or view. If you are importing data, the account that BCP is running under needs SELECT, INSERT, and ALTER TABLE permissions. Importing and Exporting Data BCP is a utility that you execute from the command line and has the following syntax: bcp {[[database_name.][owner].]{table_name | view_name} | "query"} {in | out | queryout | format} data_file [-mmax_errors] [-fformat_file] [-x] [-eerr_file] [-Ffirst_row] [-Llast_row] [-bbatch_size] [-n] [-c] [-w] [-N] [-V (60 | 65 | 70 | 80)] [-6] [-q] [-C { ACP | OEM | RAW | code_page } ] [tfield_term] [-rrow_term] [-iinput_file] [-ooutput_file] [apacket_size] [-Sserver_name[\instance_name]] [-Ulogin_id] [Ppassword] [-T] [-v] [-R] [-k] [-E] [-h"hint [,...n]"] 3 / 30 Importing and Exporting Data CAUTION CASE SENSITIVITY All command-line switches for BCP are case-sensitive. For example you use –e to specify an error fi le, yet –E tells BCP to preserve identity values during an import. Examples: bcp AdventureWorks.HumanResources.Department out c:\test\department.txt -n -SHOTEK –T bcp AdventureWorks.HumanResources.Department in c:\test\department.txt -c -SHOTEK -U<login> -P<password> bcp "SELECT Name, GroupName FROM HumanResources.Department" queryout c:\test\d epartment.txt -n -SHOTEK –T 4 / 30 Importing and Exporting Data EXAM TIP The exam tests you on whether you know which import/export option is most appropriate to a given situation. NOTE ENFORCING CHECK CONSTRAINTS AND TRIGGERS When you import data into a table using BCP, triggers and check constraints are disabled by default. If you want to enforce check constraints and fi re triggers during the import, you need to use the –h switch. If you do not disable triggers and check constraints during an import, you do not need ALTER TABLE permissions. 5 / 30 Importing and Exporting Data The BULK INSERT command - BULK INSERT cannot export data. - BULK INSERT is a T-SQL command and does not need to specify the instance name or login credentials. 6 / 30 Importing and Exporting Data BULK INSERT [ database_name . [ schema_name ] . | schema_name . ] [ table_name | view_name ] FROM 'data_file' [ WITH ( [ [ , ] BATCHSIZE = batch_size ] [ [ , ] CHECK_CONSTRAINTS ] [ [ , ] CODEPAGE = { 'ACP' | 'OEM' | 'RAW' | 'code_page' } ] [ [ , ] DATAFILETYPE = { 'char' | 'native'| 'widechar' | 'widenative' } ] [ [ , ] FIELDTERMINATOR = 'field_terminator' ] [ [ , ] FIRSTROW =first_row ] [ [ , ] FIRE_TRIGGERS ] [ [ , ] FORMATFILE = 'format_file_path' ] [ [ , ] KEEPIDENTITY ] [ [ , ] KEEPNULLS ] [ [ , ] KILOBYTES_PER_BATCH =kilobytes_per_batch ] [ [ , ] LASTROW = last_row ] [ [ , ] MAXERRORS = max_errors ] [ [ , ] ORDER ( { column [ ASC | DESC ] } [ ,...n ] ) ] [ [ , ] ROWS_PER_BATCH = rows_per_batch ] [ [ , ] ROWTERMINATOR = 'row_terminator' ] [ [ , ] TABLOCK ] [ [ , ] ERRORFILE = 'file_name' ] )] 7 / 30 Database Configuration and Maintenance EXAM TIP The exam tests you on whether you know which import/export option is most appropriate to a given situation. NOTE ENFORCING CHECK CONSTRAINTS AND TRIGGERS When you import data into a table using BCP, triggers and check constraints are disabled by default. If you want to enforce check constraints and fi re triggers during the import, you need to use the –h switch. If you do not disable triggers and check constraints during an import, you do not need ALTER TABLE permissions. 8 / 30 Importing and Exporting Data The SQL Server Import and Export Wizard You access the wizard by right-clicking a database within Object Explorer, selecting Tasks, and then selecting either Import Data or Export Data. - Import and Export Wizard can use any data source that is recognized by SSIS, such as Microsoft Offi ce Excel, Microsoft Offi ce Access, or Extensible Markup Language (XML) fi les. - Import and Export Wizard supports any data source or destination for which you have an Object Linking and Embedding Database (OLE DB) provider - Import and Export Wizard does not require a SQL Server instance to be either the source or destination - Wizard can move data from multiple tables or fi les in a single operation 9 / 30 Importing and Exporting Data Chapter Summary - BCP is a program that allows you to import data from a fi le into a table as well as export data from a table to a fi le. - BULK INSERT is a T-SQL command that allows you to import data from a fi le into a table. - The Import and Export Wizard uses a subset of the SSIS feature set to move data between a source and destination 10 / 30 Importing and Exporting Data 1. You want to import data into the Orders table. The table has triggers and check constraints that you want to be checked to guarantee integrity. You choose to use the BCP utility and specify the -h “CHECK_CONSTRAINTS, FIRE_TRIGGERS” hint to accomplish your task. Which of the following permissions must be in place? A. SELECT permission on the Orders table B. ALTER TABLE on the Orders table C. INSERT permission on the Orders table D. A member of the bulkadmin role 11 / 30 Importing and Exporting Data 1. Correct Answers: A and C A. Correct: If you are importing data, you need SELECT, INSERT, and ALTER TABLE permissions on the destination. However, if you do not disable triggers and check constraints, you do not need ALTER TABLE permission. B. Incorrect: If you are importing data, you need SELECT, INSERT, and ALTER TABLE permissions on the destination. However, if you do not disable triggers and check constraints, you do not need ALTER TABLE permission. C. Correct: If you are importing data, you need SELECT, INSERT, and ALTER TABLE permissions on the destination. However, if you do not disable triggers and check constraints, you do not need ALTER TABLE permission. D. Incorrect: If you are importing data, you need SELECT, INSERT, and ALTER TABLE permissions on the destination. However, if you do not disable triggers and check constraints, you do not need ALTER TABLE permission. 12 / 30 Importing and Exporting Data 2. You are performing a migration on the Order database at Contoso from Oracle to SQL Server. The Order database contains several hundred tables. The CustomerAddress table has an XML column named AddressBook. What is the most effi cient, least intrusive way to move the data to the new SQL Server database? A. Move the Order database from Oracle to SQL Server using replication. B. Unload the data using Oracle utilities and load the data into SQL Server using BCP. C. Move the Order database using the Import and Export Wizard. D. Move the data from Oracle to SQL Server using the OPENROWSET function. 13 / 30 Importing and Exporting Data 2. Correct Answer: C A. Incorrect: Although it is possible to publish the tables from Oracle to SQL Server, it is more intrusive than using the Import and Export Wizard to move the data. B. Incorrect: You need to code a BCP command for each table that you are importing data into, which is less effi cient than using the Import and Export Wizard. C. Correct: The Import and Export Wizard allows you to connect to Oracle, select multiple tables, and move the data to SQL Server in a single operation. D. Incorrect: The OPENROWSET can move a single table at a time, which is less effi cient than using the Import and Export Wizard. 14 / 30 Designing Policy Based Management Designing Policy Based Management Exam 70-432 15 / 30 Designing Policy Based Management Policy Based Management introduces the following new objects that are used to design and check for compliance: - Facets - Conditions - Policies - Policy targets - Policy categories 16 / 30 Designing Policy Based Management Facets Facets define the type of object or option to be checked, such as database, Surface Area, and login. SQL Server ships with 74 facets get a list of the facets available by querying the dbo.syspolicy_management_facets table 17 / 30 Designing Policy Based Management Conditions You defi ne the conditions that you want to check or enforce for a policy by defi ning criteria for the properties of a facet. =, <>, LIKE, NOT LIKE, IN, or NOT condition must be executed manually and cannot be scheduled. 18 / 30 Designing Policy Based Management Policy Targets Conditions can also be used to specify the objects to compare the condition against, called policy targeting or target sets. You can target a policy at the server level, such as instances that are SQL Server 2005 or SQL Server 2008. You can also target a policy at the database level, such as all user databases or all system databases 19 / 30 Designing Policy Based Management Policies The execution mode can be set as follows: - On demand Evaluates the policy when directly executed by a user - On change, prevent Creates data defi nition language (DDL) triggers to prevent a change that violates the policy - On change, log only Checks the policy automatically when a change is made using the event notifi cation infrastructure - On schedule Creates a SQL Server Agent job to check the policy on a defi ned schedule 20 / 30 Designing Policy Based Management Policy Categories Policy categories can be used to group one or more policies into a single compliance unit. If not specifi ed, all policies belong to the DEFAULT category. Each policy category has a Mandate property that applies to databases 21 / 30 Designing Policy Based Management Policy Compliance Because you cannot set all policies to enforce compliance, you need to check policies manually that cannot be enforced on a regular basis. You view policies that apply to an instance by right-clicking the name of the instance within Object Explorer and selecting Policies, View You can check policies that apply to an instance by right-clicking the name of the instance within Object Explorer and selecting Policies, Evaluate. 22 / 30 Designing Policy Based Management Central Management Server Import and Export Policies SQL Server ships with 53 policies that are located in the Microsoft SQL Server\100\Tools\Policies folder. There are 50 policies for the database engine, 2 policies for Reporting Services, and 1 policy for Analysis Services. 23 / 30 Designing Policy Based Management 1. You have defi ned several policies that you want applied to all databases within an instance. How do you ensure that a database owner is not allowed to avoid the policy check with the least amount of administrative effort? A. Create a condition that checks all databases. B. Add the policy to a user-defi ned policy category and set the Mandate property. C. Add the policy to the default policy category. D. Check the policies manually against the instance. 24 / 30 Designing Policy Based Management 1. Correct Answer: C A. Incorrect: Even if you create a condition that checks all databases, a database owner can choose not to subscribe to a policy unless you have mandated compliance. B. Incorrect: While you could create a policy category that has the Mandate property enabled and add the policy to the category, it requires more effort than just adding the policy to the default policy category. C. Correct: The default category is confi gured with the Mandate property enabled. In addition, you cannot disable the Mandate property. D. Incorrect: While you could check the policies manually, this requires more effort that adding the policy to the default category. 25 / 30 Dziękuję za uwagę Tomasz Gacek 26 / 30