Wednesday, October 07, 2015

LINQ Query / Method Syntax Examples

Entity Framework


for Entity Framework: Load referenced Object first, then query Attribute of Object:
parent.Childs.Select(o=>o.ChildAttribute).FirstOrDefault(x => x.Name == name);


LINQ Query / Method Syntax Examples

Customer[] customers = Service.GetCustomers();
var query = from customer in customers
where customer.Name == "Hans"
from order in customer.Orders
where order.Quantity > 6
select new {order.OrderID, order.ProductID};

Customer[] customers = Service.GetCustomers();
var query = customers
.Where(c => c.Name == "Hans")
.SelectMany(c => c.Orders)
.Where(order => order.Quantity > 6)
.Select(order => new {order.OrderID, order.ProductID});

Entity Framework (EF) Code First Migrations: Seeding

you can use SQL(...) in Up/Down Methods, or Configuration.Seed or check if already exists

Entity Framework (EF) Code First Migration Update

If you want to update an existing database to current Version you have to set the EF Database Initializer:
System.Data.Entity.Database.SetInitializer(new MigrateDatabaseToLatestVersionContext, Migrations.Configuration>());

when you first Access the db, EF checks the current Version and updates it if necesarry. You Need a parameterless contructor in your Context Class. Ist called several times when updating the DB. And you have to call the base constructor (of DBContext) and pass the correct connectionstringname if you want the correct database beiing updated, else the Default database is being updated (db Name=Namespace.classname of ypur EF Context)


Tuesday, October 06, 2015

Visual Studio: customize debugger display of classes

Shows Name, type if not null, if type null then Shows "Null"
e.g.:
Name = "Stückzahl", Type="Int"
Name = "Int", Type="Null"

class head:

[DebuggerDisplay("Name = {Name}, Type={null==Type?\"Null\":Type.Name}")]

public class DbAttribute



{




public Guid DbAttributeId { get; set; }

public string Name { get; set; }

public DbAttribute Type { get; set; }

Wednesday, September 30, 2015

sql server display all user columns with nvarchar(Max) or normal DateTime

Entity framework (EF) Code First default uses nvarchar(max) for string - thats a performance overhead.


check all columns with nvarchar(max):

select t.name as tablename,c.name as columnname,c.max_length from sys.columns c join sys.tables t on c.object_id=t.object_id Where c.max_length=-1


check all columns with normal datetime (EF better use datetime2):

select t.name as tablename,c.name as columnname,c.max_length from sys.columns c join sys.tables t on c.object_id=t.object_id where system_type_id=61

Tuesday, September 29, 2015

Visual Studio Einstellungen / Preferences

Tools – Options – Projects and Solutions – Track Active Item in Solution Explorer

Monday, September 28, 2015

Entity Framework Code First Relations one Foreign Key to manyTables

the only possibility to use one foreign key column in Table N for more then one Oneside Table in Code first  is to make a base class (OneSidebase) for the 1:n relation and derive from this class OneDiseBase for all tables (OneSide1 ...m) that Need a 1:n relation to Table N

Thursday, September 24, 2015

Wednesday, September 23, 2015

powershell files and directory

#is there any *.Bak file ?

if (Get-ChildItem C:\sqlBackup\Stp1\*.Bak) {"exists"} else {"no"}

#create Dir if not exists and don't Display error if exists:
md mydir -Force

sql server: reorg / rebuild fragmented indizies (blows up transaction log)

--0) tables with no primary key - create key first to reorg / rebuild indezis

select s.name, o.name, I.Name

from sys.dm_db_index_physical_stats (DB_ID('CRM'), Null, NULL, NULL, NULL) st

join sys.indexes I on St.object_id = I.object_id AND St.index_id = I.index_id

join sys.objects o on St.object_id = o.object_id

join sys.schemas s on o.schema_id = s.schema_id

where I.name is null order by s.name,o.name







--1) reogranize indexes

select s.name, o.name, I.Name,st.avg_fragmentation_in_percent,

'alter index '+i.name +' on ' + o.name + ' Reorganize;'

from sys.dm_db_index_physical_stats (DB_ID('CRM'), Null, NULL, NULL, NULL) st

join sys.indexes I on St.object_id = I.object_id AND St.index_id = I.index_id

join sys.objects o on St.object_id = o.object_id

join sys.schemas s on o.schema_id = s.schema_id

where st.avg_fragmentation_in_percent>5 and I.name is not null

order by st.avg_fragmentation_in_percent desc







--2) rebuild indezies where reorg hasn't succeeded

select s.name, o.name, I.Name,st.avg_fragmentation_in_percent,

'alter index '+i.name +' on ' + o.name + ' Rebuild;'

from sys.dm_db_index_physical_stats (DB_ID('CRM'), Null, NULL, NULL, NULL) st

join sys.indexes I on St.object_id = I.object_id AND St.index_id = I.index_id

join sys.objects o on St.object_id = o.object_id

join sys.schemas s on o.schema_id = s.schema_id

where st.avg_fragmentation_in_percent>5 and I.name is not null

order by st.avg_fragmentation_in_percent desc

Tuesday, September 22, 2015

power shell: youngest entry in dir

Get-ChildItem | Sort-Object -Property @{Expression={$_.LastWriteTime};Ascending=$false} | Select-Object -First 1

sql server and power shell

#execute tsql script using actual Windows user:


invoke-sqlcmd  -serverinstance "localhost\SQLEXPRESS" -Query "select * from sys.database_files"


invoke-sqlcmd -inputfile "Backup.sql" -serverinstance "localhost\SQLEXPRESS" # -database "mydatabase"




#backup database - since sqlserver 2012 (2008 not working!)

Backup-SqlDatabase -ServerInstance "localhost\SQLEXPRESS" -Database "mydb" -BackupFile "c:\sqlBackup\mydb.Bak"


sometimes ist necesarry to Import sqlSnapIns:


Add-PSSnapin SqlServerCmdletSnapin100
Add-PSSnapin SqlServerProviderSnapin100


normale Shell: sqlcmd -S localhost\SQLEXPRESS

Thursday, September 17, 2015

EF Code First Migrations Basics

EF (Entity Framework) Migrations are a way to generate versioned Database Scripts from c# Classes. Developpers can specify which Changes are sumerized to a new Version. EF Migrations are enabled by Package Manager Console Command Enable-Migrations. It creates a Migration Folder and a Configuration Class in your Visual Studio Project.
When all changes for a new Version are made to the Entity c# Classes, the Package Manager Console Command "Add Migration (Migrationname)" creates a c# Class deriving from DbMigrations with a Up and a Down Method, which executes the necesarry SQL for Up/Downgrading the DB. The DB itself is upgraded either by the Package Manager Console Command Update-Database (which also lets you create script by -script Parameter) or by using Database Initializer, which are executed when the DBContext first Needs the Database:
//upgrades Production Datebase, maybe first make a backup
Database.SetInitializer(new MigrateDatabaseToLatestVersion());
//creates new Db
Database.SetInitializer(new CreateDatabaseIfNotExists());

So the Software itself can automatically create or upgrade the needed Database.
Summary of Commands and Options: https://coding.abel.nu/2012/03/ef-migrations-command-reference/ or in the Package Manager Console: get-help Add-Migration


most important Package Manager Console Commands:


  1. Enable-Migrations
  2. Add Migration (Migrationname)
  3. Update-Database


Examples:

getting all migrations which have been deployed to a database so far:
get-migrations

adding a migration after changing EF-Relevant Code:
add-migration Mig0025

update Database to a specific Migration
Update-Database -TargetMigration Mig0005 -Verbose -connectionStringName Db1

Add Custom SQL to Migration

use the SQL Methode in the Up / Down Methode:

EF Code First Migrations Basics

EF (Entity Framework) Migrations are a way to generate versioned Database Scripts from c# Classes. Developpers can specify which Changes are sumerized to a new Version. EF Migrations are enabled by Package Manager Console Command Enable-Migrations. It creates a Migration Folder and a Configuration Class in your Visual Studio Project.
When all changes for a new Version are made to the Entity c# Classes, the Package Manager Console Command "Add Migration (Migrationname)" creates a c# Class deriving from DbMigrations with a Up and a Down Method, which executes the necesarry SQL for Up/Downgrading the DB. The DB itself is upgraded either by the Package Manager Console Command Update-Database (which also lets you create script by -script Parameter) or by using Database Initializer, which are executed when the DBContext first Needs the Database:
//upgrades Production Datebase, maybe first make a backup
Database.SetInitializer(new MigrateDatabaseToLatestVersion());
//creates new Db
Database.SetInitializer(new CreateDatabaseIfNotExists());

So the Software itself can automatically create or upgrade the needed Database.
Summary of Commands and Options: https://coding.abel.nu/2012/03/ef-migrations-command-reference/ or in the Package Manager Console: get-help Add-Migration


most important Package Manager Console Commands:


  1. Enable-Migrations
  2. Add Migration (Migrationname)
  3. Update-Database


Examples:

getting all migrations which have been deployed to a database so far:
get-migrations

adding a migration after changing EF-Relevant Code:
add-migration Mig0025

update Database to a specific Migration
Update-Database -TargetMigration Mig0005 -Verbose -connectionStringName Db1

Add Custom SQL to Migration

use the SQL Methode in the Up / Down Methode:

Entity Framework Basics

Entity Framework is a open source OR Mapper from Microsoft. It is installed via NuGet Package Manager to a Visual Studio Project.
There are 3 main ways to use it:
1.Database first: By Adding a new Entity Framework Model you can choose "from existing Database". A Wizard let you select the objects you want to generate Entity Model and Entity Classes for.
2.Model first: By Adding a new Entity Framework Model you can choose "Empty Model". then you can add Entities in the Model Designer - Entity c# Classes are generated when you build the Project, you can deploy it to a database by choosing "Update Database" from the Context Menu in the Model Designer.
3.Code first: You write c# classes and add them as DbSet to a Entity Context Class (derives from System.Data.Entity.DbContext). Then the DBContext creates a Database with Tables for every Class in a DbSet Property and for all related classes. It also creates Relations.

Monday, September 14, 2015

simple wpf entity framework databinding to ms DataGridView and Telerik RadGridView

main Xaml Window: Codebehind: namespace WpfApplication1 { /// /// Interaction logic for MainWindow.xaml /// public partial class MainWindow : Window { StpDbEntities1 _stpDbEnt = new StpDbEntities1(); public MainWindow() { InitializeComponent(); } private void Window_Loaded(object sender, RoutedEventArgs e) { MyDataGrid.ItemsSource = _stpDbEnt.tMachine.Local; MyRadGridView.ItemsSource = _stpDbEnt.tMachine.Local; _stpDbEnt.tMachine.Load(); //Window1 w1=new Window1(); //w1.Show(); //Show first Name - not necesarry var machinename = _stpDbEnt.tMachine.First().Name; if (machinename == null) throw new ArgumentNullException("machinename"); MessageBox.Show(machinename); } private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) { _stpDbEnt.SaveChanges(); } } }

Wednesday, September 09, 2015

power shell for loop

for ($i=1; $i -le 10; $i++) { Write-Host "Loop:" $i }

Creating some sql server Databases per Tsql script

declare @counter int = 1 declare @sql nvarchar(50) while @counter < 100 begin set @counter = @counter + 1 set @sql = 'Create Database T'+ convert(nvarchar(3),@counter) print ' sql=' + @sql exec (@sql) end

Wednesday, June 24, 2015

oracle kill sessions

select inst_id,sid,serial# from gv$session where schemaname like 'PSA%'; alter system kill session '14,24893,@1';

oracle constraints

select * from user_Constraints where constraint_name='myConstraint';

Tuesday, June 23, 2015

news visual studio VS 2013 neu

Save Load Color SChema Blue Alt F12 CRT, Scrollbar Options Alt+Cursor Down / Up verschiebt Codeblöcke Search in Options, Fenstergröße änderbar XAML F12, INtllisense für Resourcen Code Lenses Visual Studio Blog

oracle datetime examples

to_date('22.6.2015 12:03','DD.MM.YYYY HH24:MI') alter table myTable add PERFORMED_AT DATE; --TIMESTAMP stores date and time alter table myTable modify PERFORMED_AT TIMESTAMP;

Monday, June 22, 2015

last / letzte oracle sql statements

select vsession.machine,service_name,vsession.username,vcursor.sql_id,vsql.last_load_time,vsql.executions,vcursor.sql_text as short_sql,vcursor.sid,vsession.program,vsession.osuser,vsql.sql_fulltext as long_sql from v$open_CURSOR vcursor LEFT OUTER JOIN v$sql vsql on (vcursor.sql_id = vsql.sql_id) INNER JOIN v$session vsession on (vcursor.sid = vsession.sid) WHERE vsql.sql_fulltext like '%ETL%' order by vsql.last_load_time;

Friday, June 19, 2015

oracle Invalide Packete / Packets

SELECT owner,object_name,subobject_name,object_type, status FROM all_objects WHERE status='INVALID';

Friday, May 29, 2015

einfaches / simple power shell script

[CmdletBinding()] param( [Parameter(Mandatory=$True)] [string[]] $Computername='localhost' ) Get-VM -ComputerName $Computername with help: <# .Synopsis short Explanation .Description long Explanation .Parameter Computername paramdesc .Example getVm localhost #> [CmdletBinding()] param( [Parameter(Mandatory=$True)] [string[]] $Computername='localhost' ) Get-VM -ComputerName $Computername

Monday, May 25, 2015

nützliche power shell cmdlets

update-help help alias Import-PSSession New-PSSession Get-PSSession help exit-PSSession -ShowWindow icm $env:PSModulePath -split ";" 's1','s2' | foreach {write-output $_}

Wednesday, May 20, 2015

vs (visual studio) shotcuts

shift Alt Enter ... Fenster groß / klein
 Vs2013: Alt +Pfeiltaste: Zeile verschieben
 Strg Alt Space ... toggle INtellisense Mode
 Strg-Shift-V Rotate Zwischenablage
 crt-shift Mausrad Zoom
 crt k,s : surround with
 crt F10 debug till curser

wichtige EInstellungen:
Optionen / Projekte und Solutions / Aktives Element im Projektmappen Explorer überwachen

Saturday, May 16, 2015

powershell drivesize remaining

PS C:\Windows\system32> icm hv01,hv02,hv04 {Get-Volume} | select pscomputername, driveletter,sizeremaining | Format-Table -AutoSize

Tuesday, May 12, 2015

sql disk io

short reblogged from http://www.mssqltips.com/sqlservertip/2127/benchmarking-sql-server-io-with-sqlio/ 1) change param.txt to bigger testfile (10Gb) and correct drive: param.txt c:\testfile.dat 8 0x0 10240 #name threads cpuaffinity sizeInMB 2) create testfile: sqlio -kW -s5 -fsequential -o4 -b64 -Fparam.txt C:\Program Files (x86)\SQLIO>sqlio -kW -s5 -fsequential -o4 -b64 -Fparam.txt sqlio v1.5.SG parameter file used: param.txt file c:\testfile.dat with 8 threads (0-7) using mask 0x0 (0) 8 threads writing for 5 secs to file c:\testfile.dat using 64KB sequential IOs enabling multiple I/Os per thread with 4 outstanding size of file c:\testfile.dat needs to be: 10737418240 bytes current file size: 0 bytes need to expand by: 10737418240 bytes expanding c:\testfile.dat ... done. using specified size: 10240 MB for file: c:\testfile.dat initialization done CUMULATIVE DATA: throughput metrics: IOs/sec: 1327.03 MBs/sec: 82.93 VM on HyperV on SSD Raid,other examples: Al: IOs/sec: 3862.24 MBs/sec: 241.39 3) RANDOM WRITE TEST: (-d ... Drive -s seconds -t threads simultan) sqlio -dC -BH -kW -frandom -t1 -o1 -s60 -b64 \testfile.dat sqlio -dC -BH -kW -frandom -t2 -o1 -s60 -b64 \testfile.dat sqlio -dC -BH -kW -frandom -t4 -o1 -s60 -b64 \testfile.dat sqlio -dC -BH -kW -frandom -t8 -o1 -s60 -b64 \testfile.dat C:\Program Files (x86)\SQLIO>sqlio -dC -BH -kW -frandom -t1 -o1 -s90 -b64 \testfile.dat sqlio v1.5.SG 1 thread writing for 90 secs to file C:\testfile.dat using 64KB random IOs enabling multiple I/Os per thread with 1 outstanding buffering set to use hardware disk cache (but not file cache) using current size: 10240 MB for file: C:\testfile.dat initialization done CUMULATIVE DATA: throughput metrics: IOs/sec: 1082.02 MBs/sec: 67.62 Al -t1: IOs/sec: 915.90 MBs/sec: 57.24 4)RANDOM READ TEST: sqlio -dC -BH -kR -frandom -t1 -o1 -s60 -b64 \testfile.dat sqlio -dC -BH -kR -frandom -t2 -o1 -s60 -b64 \testfile.dat sqlio -dC -BH -kR -frandom -t4 -o1 -s60 -b64 \testfile.dat sqlio -dC -BH -kR -frandom -t8 -o1 -s60 -b64 \testfile.dat C:\Program Files (x86)\SQLIO>sqlio -dC -BH -kR -frandom -t1 -o1 -s30 -b64 \testfile.dat sqlio v1.5.SG 1 thread reading for 30 secs from file C:\testfile.dat using 64KB random IOs enabling multiple I/Os per thread with 1 outstanding buffering set to use hardware disk cache (but not file cache) using current size: 10240 MB for file: C:\testfile.dat initialization done CUMULATIVE DATA: throughput metrics: IOs/sec: 2409.36 MBs/sec: 150.58 Al: IOs/sec: 278.00 MBs/sec: 17.37

Sunday, May 10, 2015

powershell examples

get-host update-help Get-ExecutionPolicy Get-PSDrive get-vm -ComputerName hv01,hv02,hv04 | where State -eq Off | sort name help New-SelfSignedCertificate -Examples New-SelfSignedCertificate -DnsName www.test.net -CertStoreLocation Cert:\LocalMachine\My $var=read-host "Enter a Computername" Write-Output "Test" Write-Host "Test" Write-Warning "Test" 's1','s2' | foreach {write-output $_}

Wednesday, May 06, 2015

values constructor sql server

select * from (values (10),(20)) as TabName(colName)

kiwi syslog daily logfile

Default/Actions/Log to file C:\Programme\Syslogd\Logs\Interfaceueberwachung\log%DateISO.txt

Tuesday, May 05, 2015

Saturday, April 25, 2015

linux :ende von dateien anschauen

Tail –f /var/log/syslog Oder Tail –f /var/log/messages

Anzahl der Zeilen: -n

tail filename -n

Wednesday, April 15, 2015

wireshark filters

udp ... all udp entries ip.addr == 192.168.1.1 ... all from / to 192.168.1.1

Monday, April 13, 2015

team foundation server command line remove Locks

Zurücksetzen von Locks/CheckOuts für andere Benutzer: Die Operationen können mit dem TF Kommando in einer Visual 2010 Konsole ausgeführt werden. Checkouts von jemanden anderen rückgängig machen: D:\TFS\TFSTestprojekt>tf undo $/Intern_Testprojekt_EP_V004 /workspace:WST08008;har mar

Thursday, April 09, 2015

Sql Server Trigger to set Last Change Date & Last Change User

ALTER TRIGGER [dbo].[Holidays_SetModified] ON [dbo].[Holidays]
AFTER INSERT,UPDATE AS
BEGIN
  --PRINT '[sf_KISData].[sf_KISData_Cascade_Modified] BEGIN'
  DECLARE @id AS int
  DECLARE @mod AS DATETIME
  DECLARE @LUserId as int
  DECLARE curInserted CURSOR LOCAL FOR
        SELECT id, DateLastModified,LUserId FROM Inserted
  OPEN curInserted FETCH NEXT FROM curInserted INTO @id, @mod, @LUserId
  WHILE (@@FETCH_STATUS = 0)
   BEGIN
     IF NOT UPDATE(DateLastModified) OR @mod IS NULL
     BEGIN
        UPDATE Holidays SET DateLastModified= getutcdate(), LUserId=User_Id() WHERE id= @id      END
     FETCH NEXT FROM curInserted INTO @id, @mod, @LUserId
 END
 CLOSE curInserted
 --PRINT '[sf_KISData].[sf_KISData_Cascade_Modified] END'
END

Sql Server User Functions

SELECT USER_NAME(), SYSTEM_USER, CURRENT_USER,SESSION_USER, USER_ID(); select * from sys.sysusers

Wednesday, April 01, 2015

(freie) Antiviren software vergleich

free AVG: schnell und einfach zu bedienen, Netzlaufwerkscan möglich, im (chip test eher nicht so gut Trend Micro im Chip test beste Erkennungsrate, kann keine Netzlaufwerke scannen (zumindest nicht in trial version) und es gibt keine freie version free Avast: für Programmierer ungeeignet, da scannt nach jedem kompelieren, Netzlaufwerksscan ok

Friday, March 20, 2015

oracle sid

reblogged from http://www.bunyamindemir.com/?p=113 1) SELECT global_name FROM global_name; 2) SELECT INSTANCE_NAME FROM v$instance; 3) echo $ORACLE_SID; 4) SHOW PARAMETER INSTANCE_NAME; 5) SELECT sys_context('USERENV','INSTANCE_NAME') FROM dual; 6) SELECT ORA_DATABASE_NAME FROM dual;

Friday, March 13, 2015

Sql Server Datafile Size in MB / GB

SELECT DB_NAME(database_id) [DatabaseName], [name] AS [LogicalName], (size*8)/1024/1024 [GB] FROM sys.master_files order by size desc select (size*8)/1024 [MB],* from sys.database_files

Thursday, March 12, 2015

power shell zip

#to create a new zip file: # Set-Content $arg[0] (“PK”+ [char]5 + [char]6 + (“$([char]0)”* 18)) #copy a file to new zip file $Shell=New-Object -ComObject Shell.Application $ZipFolder=$Shell.Namespace(‘F:\backup.zip’) $ZipFolder.CopyHere(‘C:\0bat\test.txt’)

Wednesday, January 21, 2015

ISO: Windows Burn Disc Image not visible / Datenträger Abbild brennen nicht sichtbar

Windows Explorer rigth mouse button Burn Disc Image not visible / rechte Maustaste Datenträger Abbild brennen nicht sichtbar => set Windows Explorer as standard program for ISO => rigth mouse button Burn Disc Image visible => Windows Explorer als Standard Programm setzen => rechte Maustaste Datenträger Abbild brennen sichtbar

Oracle Autoextend - Autogrow of Datafiles - automatisches Datenfile vergößern

ALTER TABLESPACE USERS ADD DATAFILE 'C:\oradata\dev4\USERS02.dbf' SIZE 500M AUTOEXTEND ON NEXT 500M; wenn das USERS02.dbf voll wird wird es um 500MB vergrößert when USERS02.dbf is fll oracle increases its size by 500MB

Sunday, January 11, 2015

c# wpf fill comboox with enum

string s=cbScchVersion.SelectedValue.ToString(); object o=Enum.Parse(typeof(AppObject.ScchVersion),s); int i=(int)o; AppObject.ScchVer = (AppObject.ScchVersion) i;

Thursday, December 18, 2014

Visual Studio Find and Replace Regular Expressions / Suchen und Ersetzten mit Regulären Ausdrücken (regex)

auf gefunde Ausdrücke greift man mit z.b. \0 zu, \0 gibt den ersten gefunden Ausdruck zurück. möchte man z.b. in allen DllImport Statements ,CallingConvention=CallingConvention.Cdecl hinzufügen, bsp: [DllImport(DRIVER_DLL_NAME, EntryPoint = "is_StopLiveVideo")] suchen: EntryPoint.*" ersetzen: \0, CallingConvention=CallingConvention.Cdecl Ergebnis: [DllImport(DRIVER_DLL_NAME, EntryPoint = "is_StopLiveVideo",CallingConvention=CallingConvention.Cdecl)]

PInvokeStackImbalance was detected (c# / .net) - fix : CallingConvention.Cdecl

[DllImport(DRIVER_DLL_NAME, EntryPoint = "is_ClearSequence")] // is_ClearSequence private static extern int is_ClearSequence(int hCam); [DllImport(DRIVER_DLL_NAME, EntryPoint = "is_ClearSequence", CallingConvention = CallingConvention.Cdecl)] // is_ClearSequence private static extern int is_ClearSequence(int hCam);

Tuesday, October 28, 2014

sql server tables unused space / unbenutzer Platz in Sql Server Tabellen, filesize / filegröße

--sql server tables unused space / unbenutzer Platz in Sql Server Tabellen: SELECT t.NAME AS TableName, s.Name AS SchemaName, p.rows AS RowCounts, SUM(a.total_pages) * 8 AS TotalSpaceKB, SUM(a.used_pages) * 8 AS UsedSpaceKB, (SUM(a.total_pages) - SUM(a.used_pages)) * 8 AS UnusedSpaceKB FROM sys.tables t INNER JOIN sys.indexes i ON t.OBJECT_ID = i.object_id INNER JOIN sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id INNER JOIN sys.allocation_units a ON p.partition_id = a.container_id LEFT OUTER JOIN sys.schemas s ON t.schema_id = s.schema_id WHERE t.NAME NOT LIKE 'dt%' AND t.is_ms_shipped = 0 AND i.OBJECT_ID > 255 GROUP BY t.Name, s.Name, p.Rows ORDER BY UnusedSpaceKB desc --filegröße / filesize SELECT DB_NAME(database_id) AS DatabaseName, Name AS Logical_Name, Physical_Name, (size*8)/1024 SizeMB FROM sys.master_files where right(physical_name,3)='mdf' order by size desc

Thursday, August 28, 2014

bootrec (windows 10)

bootrec /fixmbr
bootrec /fixboot
bootrec /rebuildbcd

wichtig: bios bootdevice muß harddisk sein => boot von hd einstellen und bootmenu aufrufen um dann von install disk zu booten, dann obige commandos ausführen win server braucht keine extra partition bcdboot c:\windows /s c: ... kopiert boot files von c:\windows\Boot auf C:\Boot wenn HyperV nicht automatisch startet: bcdedit /set hypervisorlaunchtype Auto

Wednesday, August 27, 2014

windows server 2012 Disk management

Server Manager unterstützt scheinbar keine MBR Initialisation, daher: power shell: Initialize-Disk 4 –PartitionStyle MBR

Thursday, August 21, 2014

TSQL if then

--simplest / einfach if 1=1 Print 'Ja-Yes' else print 'nein-no' --one begin End block if 1=0 Begin Print 'Ja-Yes' End else print 'nein-no' --two ifs if 1=0 Begin Print '1:Ja-Yes' End else if 1=1 print '1:nein-no, 2:ja-yes' else print '1:nein-no, 2:nein-no'

Friday, August 08, 2014

vs2008 ssrs: Filter in "test1,test2,test3" not working in preview

the in clause is not working in preview, but on reportserver: I have a sharepoint datasource, and a dataset, which I filter in a table with th IN clause - doesn't display any matches, but when I deploy it is working

Sunday, August 03, 2014

einfache / simple cte (common table expression)

with cte as ( select Year(GETDATE())*10000+MONTH(GetDate())*100+DAY(GetDate()) as intDate ) select * from cte

Friday, August 01, 2014

ssrs display subreport without data / Unterbericht ohne Daten anzeigen

ein Unterbericht ohne Daten wird nicht angezeigt (wenn alle Datasets in diesem Report keine Zeilen haben, wird allerdings als eigenständiger Bericht angezeigt) => um ihn dennoch anzeigen einfach ein Dummy Dataset mit select 'dummy' as dummy einfügen, das hat immer eine Zeile und damit wird der Subreport angezeigt. a subreport with all datasets having 0 rows isn't displayed (although as normal report is displayed) => add a dummy dataset which always returns a row to display (e.g. select 'dummy' as dummy )

ssrs gauge aggregate function report item

error / fehler:
The value expression for the gauge panel 'GaugePanel1' uses an aggregate function on a report item. Aggregate functions can be used only on report items contained in page headers and footers.

solution / lösung: change Indicator Properties / Values and States / States Measurement Unit from percentage to numeric

in Indicator Properties / Values and States / States Measurement Unit von Prozent auf numerisch ändern